Foreach(增强for)
跳到导航
跳到搜索
关于 foreach
For-Each 循环也叫增强型的 for 循环,或者叫 foreach 循环,是 JDK5.0 的新特性(其他新特性比如泛型、自动装箱等),For-Each 循环的加入简化了集合的遍历。
- foreach 可以与任何实现了 Iterable 接口的对象一起工作
语法
for(type element: array)
{
System.out.println(element);
}
使用
public class ForeachTest
{
public static void main(String[] args)
{
int[] arr = {1, 2, 3, 4, 5};
System.out.println("----------普通for遍历------------");
for(int i=0; i<arr.length; i++)
{
System.out.println(arr[i]);
}
System.out.println("---------增强for遍历-------------");
for(int element:arr)
{
System.out.println(element);
}
System.out.println("---------二维数组遍历-------------");
int[][] arr2 = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}} ;
for(int[] row : arr2)
{
for(int element : row)
{
System.out.println(element);
}
}
}
}
for 与 foreach
集合的三种遍历方式
集合遍历的三种方式:
- 普通for
- 增强型for
- Iterator
public class ForeachTest
{
public static void main(String[] args)
{
//以三种方式遍历集合List
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
System.out.println("----------普通for-----------");
for(int i = 0; i < list.size(); i++)
{
System.out.println(list.get(i));
}
System.out.println("----------增强型for(实现了Iterable)-----------");
for(String str: list)
{
System.out.println(str);
}
System.out.println("----------Iterator-----------");
for(Iterator<String> iter = list.iterator(); iter.hasNext();)
{
System.out.println(iter.next());
}
}
}