首頁  >  文章  >  Java  >  淺談java 增強型的for迴圈 for each

淺談java 增強型的for迴圈 for each

高洛峰
高洛峰原創
2017-01-21 16:47:211132瀏覽

For-Each循環

For-Each循環也叫增強型的for循環,或稱為foreach循環。

For-Each循環是JDK5.0的新特性(其他新特性如泛型、自動裝箱等)。

For-Each循環的加入簡化了集合的遍歷。

其語法如下:

for(type element: array)
 
{
 
   System.out.println(element);
 
}

其語法如下:

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循環;之後實現了用增強for循環遍歷二維數組;最後採用三種維數組;最後採用三種維數組方式遍歷了一個List集合。

rrreee

   

For-Each循環的缺點:丟掉了索引資訊。

當遍歷集合或陣列時,如果需要存取集合或陣列的下標,那麼最好使用舊式的方式來實現循環或遍歷,而不要使用增強的for循環,因為它丟失了下標資訊。

🎜以上就是小編為大家帶來的淺談java 增強型的for循環for each的全部內容了,希望對大家有所幫助,多多支持PHP中文網~🎜🎜更多淺談java 增強型的for循環for each相關文章請關注PHP中文網! 🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn