Maison >Java >javaDidacticiel >Une brève discussion sur Java amélioré pour la boucle pour chacun

Une brève discussion sur Java amélioré pour la boucle pour chacun

高洛峰
高洛峰original
2017-01-21 16:47:211193parcourir

Boucle For-Each

La boucle For-Each est également appelée boucle for améliorée ou boucle foreach.

La boucle For-Each est une nouvelle fonctionnalité du JDK5.0 (autres nouveautés telles que les génériques, l'autoboxing, etc.).

L'ajout de la boucle For-Each simplifie le parcours de la collection.

La syntaxe est la suivante :

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

Exemple

Pour une utilisation de base, vous pouvez consulter directement le code :

Comparez d'abord dans le code Deux types de boucles for ont été créés ; puis la boucle for améliorée a été utilisée pour parcourir un tableau à deux dimensions et enfin trois méthodes ont été utilisées pour parcourir une collection 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);
       
    }
  }
 
}

Inconvénient de la boucle For-Each : les informations d'index sont perdues.

Lors d'une itération dans une collection ou un tableau, si vous avez besoin d'accéder à l'indice de la collection ou du tableau, il est préférable d'utiliser l'ancienne méthode pour implémenter la boucle ou le parcours au lieu d'utiliser la boucle for améliorée. car il perd les informations d'indice.

Ce qui précède est l'intégralité du contenu de la boucle for Java améliorée pour chacun présentée par l'éditeur. J'espère qu'elle sera utile à tout le monde. Veuillez soutenir le site Web PHP chinois ~

Plus. Pour en savoir plus sur la boucle for améliorée de Java pour chaque article associé, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn