JDK5.0之后推出了一个新特性,叫做增强for循环。或者叫做foreach循环
语法:
for(元素类型 变量名 : 数组或集合)
优点:
简单方便
缺点:
没有下标,在需要使用下表的循环中,不建议使用foreach循环。
public class ForEachTest01 {
public static void main(String[] args) {
// int类型的一维数组
int[] arr = {15,78,96,2,13,94};
// 遍历数组,普通for循环
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
System.out.println("-------------------");
// foreach循环
for (int data : arr) {
// data就是数组中的元素(数组中的每一个元素)
System.out.println(data);
}
}
}
在集合中也同样适用
public class ForeachTest02 {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("hello");
list.add("world");
list.add("hi");
// 使用迭代器
Iterator<String> it = list.iterator();
while (it.hasNext()) {
String s = it.next();
System.out.println(s);
}
// 注意:只有当集合有下标的时候,才可以使用循环的方式进行遍历。
// 使用普通for循环
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
// 使用增强for循环
for (String s : list) {
System.out.println(s);
}
}
}