【Java基础】Java 增强型的for循环 for each

引用:https://www.cnblogs.com/mengdd/archive/2013/01/21/2870019.html

For-Each循环

  For-Each循环也叫增强型的for循环,或者叫foreach循环。

  For-Each循环是JDK5.0的新特性(其他新特性比如泛型、自动装箱等)。

  For-Each循环的加入简化了集合的遍历。

 

其语法如下:

  for(type element: array)

  {

        System.out.println(element);

  }

 

例子

  其基本使用可以直接看代码:

  代码中首先对比了两种for循环;之后实现了用增强for循环遍历二维数组;最后采用三种方式遍历了一个List集合。

 

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ForeachTest
{
public static void main(String[] args)
{
int[] arr = {1, 2, 3, 4, 5};

System.out.println("----------旧方式遍历------------");
//旧式方式
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);
}
}

//以三种方式遍历集合List

List<String> list = new ArrayList<String>();

list.add("a");
list.add("b");
list.add("c");

System.out.println("----------方式1-----------");
//第一种方式,普通for循环
for(int i = 0; i < list.size(); i++)
{
System.out.println(list.get(i));

}

System.out.println("----------方式2-----------");
//第二种方式,使用迭代器
for(Iterator<String> iter = list.iterator(); iter.hasNext();)
{
System.out.println(iter.next());
}
System.out.println("----------方式3-----------");
//第三种方式,使用增强型的for循环
for(String str: list)
{
System.out.println(str);

}
}

}

 

 For-Each循环的缺点:丢掉了索引信息。

  当遍历集合或数组时,如果需要访问集合或数组的下标,那么最好使用旧式的方式来实现循环或遍历,而不要使用增强的for循环,因为它丢失了下标信息。

 

posted @ 2020-02-23 00:51  有肉的三明治  阅读(319)  评论(0编辑  收藏  举报