Java 简明教程

Java - for each Loop

Java for each Loop

for each 循环是一种特殊的 repetition control 结构,它允许您高效地编写需要执行特定次数的循环。

即使您不知道任务要重复多少次,for each 循环也很有用。

Syntax

以下是增强 for loop(也称为 foreach 循环)的语法 −

for(declaration : expression) {
   // Statements
}

Execution Process

  1. Declaration − 新声明的块 variable 的类型与您正在访问的数组元素兼容。变量将在 for 块中可用,其值将与当前数组元素相同。

  2. Expression − 这是您需要循环访问的数组。表达式可以是数组变量或返回 array 的方法调用。

Examples

Example 1: Iterating Over a List of Integers

在此示例中,演示了使用 foreach 循环打印整数列表内容。此处将整数列表创建为数字,并初始化为一些值。然后,使用 foreach 循环打印每个数字。

import java.util.Arrays;
import java.util.List;

public class Test {

   public static void main(String args[]) {
      List<Integer> numbers = Arrays.asList(10, 20, 30, 40, 50);

      for(Integer x : numbers ) {
         System.out.print( x );
         System.out.print(",");
      }
   }
}
10, 20, 30, 40, 50,

Example 2: Iterating Over a List of Strings

在这个示例中,我们演示如何使用 foreach 循环来打印 List 的内容 String。此处我们创建一个字符串数组作为名称,并为其初始化一些值。然后使用 foreach 循环打印了每个名称。

import java.util.Arrays;
import java.util.List;

public class Test {

   public static void main(String args[]) {
      List<String> names = Arrays.asList("James", "Larry", "Tom", "Lacy");

      for( String name : names ) {
         System.out.print( name );
         System.out.print(",");
      }
   }
}
James, Larry, Tom, Lacy,

Example 3: Iterating Over an Array of Objects

在这个示例中,我们演示如何使用 foreach 循环来打印 Student 数组的内容 Object。此处我们创建一个 Student 数组作为 Student 对象,并为其初始化一些值。然后使用 foreach 循环打印了每个名称。

public class Test {

   public static void main(String args[]) {
      Student[] students = { new Student(1, "Julie"), new Student(3, "Adam"), new Student(2, "Robert") };

      for( Students student : students ) {
         System.out.print( student );
         System.out.print(",");
      }
   }
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
}
[ 1, Julie ],[ 3, Adam ],[ 2, Robert ],