增强for循环(也称for each循环)是 JDK1.5 以后出来的一个高级for循环,
专门用来遍历数组和集合的。
它的内部原理其实是一个Iertator迭代器,所以在遍历过程中,不能对集合中的元素进行增删操作。
格式:
for(元素的数据类型 变量 : Collection集合or数组){
//操作代码
}
for(集合/数组的数据类型 变量名: 集合名/数组名){
sout(变量名)
}
它用于遍历Collection和数组。通常只进行遍历元素,不要在遍历的过程中对集合元素进行增删改操作。
Collection<E> extends Iterable<E> :所有的单例集合都可以使用增强for
public interface Iterable<T>实现这个接口允许对象成为“foreach”语句的目标。
import java.util.ArrayList;
/**
Collection<E> extends Iterable<E> :所有的单例集合都可以使用增强for
public interface Iterable<T>实现这个接口允许对象成为“foreach”语句的目标。
*/
public class 增强for {
public static void main(String[] args) {
demo01();
demo02();
}
//增强for循环遍历集合元素
private static void demo02(){
ArrayList<String> list = new ArrayList<>();
list.add("ni");
list.add("hao");
list.add("a");
list.add("shi");
list.add("ma");
for (String str : list) {
System.out.println(str);
}
}
//增强for循环遍历数组
private static void demo01() {
int[] aa = {1, 2, 3, 4, 5};
for (int i : aa){
System.out.println(i);
}
}
}