迭代器和增强for循环
阅读原文时间:2023年07月08日阅读:3

迭代:即Collection集合元素的通过获取方法,在获取元素之前先要判断集合中有没有元素,如果有就把这个元素取出来,然后在判断,如果还有就再去除卡u,一直把集合中的所有元素全部拿出来。这种取出方式专业术语成为迭代

iterator接口的常用方法如下

public E next();返回迭代的下一个元素

public boolean hasNext();如果仍有元素可以进行迭代,则返回true

案例:

class Test{
public static void main(String[] args){
Collection<String> coll = new ArrayList<>();
coll.add("a");
coll.add("b");
coll.add("c");

Iterator<String> coll = list.iterator();
while(coll.hasNext()){
  String next = coll.next();
  System.out.println(next);
}
}
}

增强for

增强for循环也称for each循环,专门用来遍历数组和集合的,他的内部原理其实就是个迭代器,所以再遍历的过程中,不能对集合中的元素进行增删操作

格式:for(元素的数据类型 变量 : 集合/数组){

、、

}

他用于遍历Collection和数组,通常只进行遍历元素,不要在遍历的过程中对集合元素进行增删操作

        Collection<String> list = new ArrayList<>();
        list.add("abc");
        list.add("efg");
        list.add("hello");
        for (String s : list) {
            System.out.println(s);
}


public class Test {
    public static void main(String[] args) {
        int[] arr = {1,2,3,4,5};
        for (int i : arr) {
            System.out.println(i);
        }
    }
}