Skip to content

foreach 循环

foreach 是一种加强型的 for 循环操作,主要可以用于简化数组或集合数据的输出操作。下面首先来回顾一下传统数组输出的操作形式。

java
package com.yootk.demo;
public class TestDemo {
	public static void main(String[] args) {
		int data[] = new int[] { 1, 2, 3, 4, 5 };		// 定义数组
		for (int x = 0; x < data.length; x++) {		// 循环输出数组
			System.out.print(data[x] + "、");
		}
	}
}
package com.yootk.demo;
public class TestDemo {
	public static void main(String[] args) {
		int data[] = new int[] { 1, 2, 3, 4, 5 };		// 定义数组
		for (int x = 0; x < data.length; x++) {		// 循环输出数组
			System.out.print(data[x] + "、");
		}
	}
}

在传统的数组输出操作中,往往会使用 for 循环来控制索引的下标,从而实现数据的输出操作。但是有一部分开发者会认为这样的输出方式需要控制索引,过于麻烦,更希望能够简化一些。所以从 JDK 1.5 开始对于 for 循环有了以下形式:

for(数据类型 变量 : 数组 | 集合){

​ //每一次循环会自动的将数组的内容设置给变量

}

此时的 for 循环操作在每次循环时会自动将当前数组(或集合)的内容依次取出,这样就可以避免索引问题。

java
package com.yootk.demo;
public class TestDemo {	public static void main(String[] args) {
		int data[] = new int[] { 1, 2, 3, 4, 5 };	// 定义数组
		for (int x : data) { 						// 循环次数由数组长度决定
			// 每一次循环实际上都表示数组的角标增长,会取得每一个数组的内容,并且将其设置给x
			System.out.println(x + "、"); 		// x就是每一个数组元素的内容
		}
	}
}
package com.yootk.demo;
public class TestDemo {	public static void main(String[] args) {
		int data[] = new int[] { 1, 2, 3, 4, 5 };	// 定义数组
		for (int x : data) { 						// 循环次数由数组长度决定
			// 每一次循环实际上都表示数组的角标增长,会取得每一个数组的内容,并且将其设置给x
			System.out.println(x + "、"); 		// x就是每一个数组元素的内容
		}
	}
}

本程序在每一次 for 循环时,都会将数组中的内容依次取出,并且设置到 int 型变量 x 中,这样程序代码中将不再需要进行索引的操作。

用心去做高质量的编程学习内容网站,欢迎star ⭐让更多人发现!