For each循环是Java SE 5.0增加的一种功能很强的循环结构,可以用来一次处理数组或集合类中的每个元素,而不必为指定下标值而分心。
For each循环的语句格式如下:
for(variable : collection) statement
这里定义了一个变量variable用于暂存集合中的每一个元素,并执行相应的语句。其中的collection这个集合表达式必须是一个数组或者是一个实现了Iterable接口的类对象。
需要使用传统的for循环的情况:不希望遍历集合中的每个元素,或者在循环体内部需要使用下标值的情况下。
下面是几个关于for each循环的实例:
//使用for each循环输出一维数组
char arthinking[] = {‘a’,‘r’,‘t’,‘h’,‘i’,‘n’,‘k’,‘i’,‘n’,‘g’};
for(char art : arthinking) {
System.out.print(art);
}
System.out.println(“\n********************”);
//使用for each循环输出二维数组
char itzhai[][] = { {‘a’,‘b’,‘a’,‘b’},{‘a’,‘a’,‘b’,‘b’},{‘b’,‘b’,‘a’,‘a’}};
for(char it1[] : itzhai) {
for(char it2 : it1){
System.out.print(it2+" “);
}
System.out.println();
}
System.out.println(”********************");
//使用for each循环输出ArrayList集合
List
list.add(“IT”);
list.add(“宅”);
list.add(“.com”);
for(String element : list)
System.out.print(element);
System.out.println(“\n********************”);
Set
set.add(“IT”);
set.add(“宅”);
set.add(“.com”);
for(String element2 : set)
System.out.print(element2);
System.out.println(“\n********************”);