java程序中foreach用法示例

语法


代码如下:

for (Object objectname : preArrayList(一个Object对象的列表)) {}

示例


代码如下:

package com.kuaff.jdk5;
import java.util.*;

import java.util.Collection;

public class Foreach
{
private Collection c = null;

private String[] belle = new String[4];

public Foreach()
{
belle[0] = "西施";
belle[1] = "王昭君";
belle[2] = "貂禅";
belle[3] = "杨贵妃";
   c = Arrays.asList(belle);
}

public void testCollection()
{
for (String b : c)
{
 System.out.println("曾经的风化绝代:" + b);
}
}

public void testArray()
{
for (String b : belle)
{
  System.out.println("曾经的青史留名:" + b);
}
}

public static void main(String[] args)

{
Foreach each = new Foreach();
   each.testCollection();
each.testArray();
}
}

对于集合类型和数组类型的,我们都可以通过foreach语法来访问它。上面的例子中,以前我们要依次访问数组,挺麻烦:


代码如下:

for (int i = 0; i < belle.length; i++)
{
String b = belle[i];
System.out.println("曾经的风化绝代:" + b);
}

现在只需下面简单的语句即可:


代码如下:

for (String b : belle)
{
   System.out.println("曾经的青史留名:" + b);
 }

对集合的访问效果更明显。以前我们访问集合的代码:


代码如下:

for (Iterator it = c.iterator(); it.hasNext();)
{
String name = (String) it.next();
System.out.println("曾经的风化绝代:" + name);
}

现在我们只需下面的语句:


代码如下:

for (String b : c)
{
System.out.println("曾经的风化绝代:" + b);
}

Foreach也不是万能的,它也有以下的缺点:

在以前的代码中,我们可以通过Iterator执行remove操作。


代码如下:

for (Iterator it = c.iterator(); it.hasNext();)
{
   itremove()
}

但是,在现在的foreach版中,我们无法删除集合包含的对象。你也不能替换对象。
同时,你也不能并行的foreach多个集合。所以,在我们编写代码时,还得看情况而使用它。

(0)

相关推荐

  • js的for in循环和java里foreach循环的区别分析

    本文实例分析了js的for in循环和java里foreach循环的区别.分享给大家供大家参考.具体分析如下: js里的for in循环定义如下: 复制代码 代码如下: for(var variable in obj) { ... } obj可以是一个普通的js对象或者一个数组.如果obj是js对象,那么variable在遍历中得到的是对象的属性的名字,而不是属性对应的值.如果obj是数组,那么variable在遍历中得到的是数组的下标. 遍历对象实验: 复制代码 代码如下: var v = {

  • Java中遍历数组使用foreach循环还是for循环?

    从JDK1.5起,增加了新功能Foreach,它是for循环遍历数据的一种简写形式,使用的关键字依然是for,但参数格式不同.其详细用法为: for(Type e:collection){ //对变量e的使用} 参数说明: e:其类型Type是集合或数组中元素值的类型,该参数是集合或数组collection中的一个元素. collections: 要遍历的集合或数组,也可以是迭代器. 在循环体中使用参数e,该参数是foreach从集合或数组以及迭代器中取得的元素值,元素值是从头到尾进行遍历的.

  • java 使用foreach遍历集合元素的实例

    java 使用foreach遍历集合元素的实例 1 代码示例 import java.util.*; public class ForeachTest { public static void main(String[] args) { // 创建集合.添加元素的代码与前一个程序相同 Collection books = new HashSet(); books.add(new String("book1")); books.add(new String("book2&quo

  • 浅析java的foreach循环

    使用foreach循环遍历数组和集合时,无需获得数组和集合的长度,无须根据索引来访问数组元素和集合元素,foreach循环自动遍历数组和集合的每一个元素. 复制代码 代码如下: foreach的语句格式: for(type variableName : array|connection){      //variable自动迭代访问每一个元素} 例子: 复制代码 代码如下: public class ForEachTest{public static void main(String[] arg

  • 深入了解java8的foreach循环

    虽然java8出来很久了,但是之前用的一直也不多,最近正好学习了java8,推荐一本书还是不错的<写给大忙人看的javase8>.因为学习了Java8,所以只要能用到的地方都会去用,尤其是Java8的Stream,感觉用起来觉得很方便,因为点点点就出来了,而且代码那么简洁.现在开始慢慢深入了解java8,发现很多东西不能看表面. 比如常规遍历一个集合,下面给出例子: 1.首先遍历一个List 方式1.一开始是这样的: public static void test1(List<Strin

  • 深入理解java中for和foreach循环

    •for循环中的循环条件中的变量只求一次值!具体看最后的图片 •foreach语句是java5新增,在遍历数组.集合的时候,foreach拥有不错的性能. •foreach是for语句的简化,但是foreach并不能替代for循环.可以这么说,任何foreach都能改写为for循环,但是反之则行不通. •foreach不是java中的关键字.foreach的循环对象一般是一个集合,List.ArrayList.LinkedList.Vector.数组等. •foreach的格式: for(元素类

  • 详解Java中的增强 for 循环 foreach

    foreach 是 Java 中的一种语法糖,几乎每一种语言都有一些这样的语法糖来方便程序员进行开发,编译期间以特定的字节码或特定的方式来对这些语法进行处理.能够提高性能,并减少代码出错的几率.在 Java 中还有比如 泛型.自动拆箱.自动装箱.内部类.枚举等等. foreach 是用来对数组或者集合进行遍历的语法.具体语法如下: for(元素类型 ele : 数组名/Iterable 实例){ } 下面我们用 foreach 来对数组和一个集合进行遍历: int [] array = {1,2

  • java程序中foreach用法示例

    语法 复制代码 代码如下: for (Object objectname : preArrayList(一个Object对象的列表)) {} 示例 复制代码 代码如下: package com.kuaff.jdk5;import java.util.*; import java.util.Collection; public class Foreach{private Collection c = null; private String[] belle = new String[4]; pub

  • 详解DES加密算法及在Java程序中的使用示例

    DES加密算法 DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1976年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),随后在国际上广泛流传开来. DES算法的入口参数有三个:Key.Data.Mode.其中Key为7个字节共56位,是DES算法的工作密钥;Data为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密. DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密

  • java程序中protobuf的基本用法示例

    目录 简介 为什么使用protobuf 定义.proto文件 编译协议文件 详解生成的文件 Builders 和 Messages 序列化和反序列化 协议扩展 总结 简介 Protocol Buffer是google出品的一种对象序列化的方式,它的体积小传输快,深得大家的喜爱.protobuf是一种平台无关和语言无关的协议,通过protobuf的定义文件,可以轻松的将其转换成多种语言的实现,非常方便. 今天将会给大家介绍一下,protobuf的基本使用和同java结合的具体案例. 为什么使用pr

  • Java程序中Doc文档注释示例教程

    目录 Doc注释规范 @符号的用处 如何生成Doc文档 第一个:Dos命令生成 第二个:IDE工具生成 许多人写代码时总不喜欢写注释,每个程序员如此,嘿嘿,我也一样 不过,话说回来,该写还是要写哦!没人会喜欢一个不写注释的程序员,当然,也没有一个喜欢写注释的程序员,今天,我们就来说说Java注释之一--Doc注释 我们知道,Java支持 3 种注释,分别是单行注释.多行注释和文档注释,我们来看看他们的样子 //单行注释   /* 多行注释 */   /** *@... *.... *文档注释 *

  • Java程序中方法的用法重载和递归

    目录 前言 一.方法的基本用法 1.什么是方法 2.方法的基本定义 3.方法调用的执行过程 4.方法中的实参和形参 二.方法的重载 1.重载的概念 2.例题分析 三.方法的递归 1.递归定义 2.例题分析 3.递归应用场景 总结 前言 "方法"又被称为"函数",其他的编程语言也有这个概念,重要性不言而喻,在这个文章,将介绍如何定义和使用方法. 一.方法的基本用法 1.什么是方法 在Java中,方法定义在类中,它和类的成员属性(数据成员)一起构建一个完整的类.构成方法

  • java编程scanner类用法示例

    在Eclipse中编写程序时,如果我们的变量是需要手动输入的时候,我们就可以用到scanner类了. Scanner类,这是一个用于扫描输入文本的新的实用程序.由于任何数据都必须通过同一模式的捕获组检索或通过使用一个索引来检索文本的各个部分.于是可以结合使用正则表达式和从输入流中检索特定类型数据项的方法.这样,除了能使用正则表达式之外,Scanner类还可以任意地对字符串和基本类型(如int和double)的数据进行分析.借助于Scanner,可以针对任何要处理的文本内容编写自定义的语法分析器.

  • 如何定位java程序中占用cpu最高的线程堆栈信息

    找出占用cpu最高的线程堆栈信息 在java编码中,有时会因为粗心导致cpu占用较高的情况,为了避免影响程序的正常运行,需要找到问题并解决.这里模拟一个cpu占用较高的场景,并尝试定位到代码行. 示例代码如下: public class Math { public static final int initData = 666; public static User user = new User(); public int compute() { //一个方法对应一块栈帧内存区域 int a

  • 如何在Java程序中访问mysql数据库中的数据并进行简单的操作

    在上篇文章给大家介绍了Myeclipse连接mysql数据库的方法,通过本文给大家介绍如何在Java程序中访问mysql数据库中的数据并进行简单的操作,具体详情请看下文. 创建一个javaProject,并输入如下java代码: package link; import java.sql.*; /** * 使用JDBC连接数据库MySQL的过程 * DataBase:fuck, table:person: * 使用myeclipse对mysql数据库进行增删改查的基本操作. */ public

  • java语言中封装类代码示例

    在面向对象程序设计方法中,封装(Encapsulation)是指一种将抽象性函式接口的实现细节部分包装'隐藏起来的方法.数据被保护在内部,隐藏内部实现细节,对外提供接口与外部交互. 使用封装的步骤 将类的所有属性使用关键字private去修饰,把它们变成私有的,不允许外部类直接访问 生成或者提供公共的setter/getter方法去操作这些被隐藏起来的属性 在类自己的 setter/getter方法中加入逻辑控制,以确保数据访问的有效性和安全性实例 让我们来看一个java封装类的例子: /* 文

  • Java程序中实现调用Python脚本的方法详解

    本文实例讲述了Java程序中实现调用Python脚本的方法.分享给大家供大家参考,具体如下: 在程序开发中,有时候需要Java程序中调用相关Python脚本,以下内容记录了先关步骤和可能出现问题的解决办法. 1.在Eclipse中新建Maven工程: 2.pom.xml文件中添加如下依赖包之后update maven工程: <dependency> <groupId>org.python</groupId> <artifactId>jython</ar

随机推荐