JavaSE-14.1.3【迭代器Iterator、Collection集合的遍历】
package day5.lesson1; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; /* 1.4 Collection集合的遍历 迭代器Iterator 是一个接口 迭代器是集合的专用遍历方式 Iterator iterator():返回此集合中元素的迭代器,通过集合的iterator()方法得到 迭代器是通过集合的iterator()方法得到的,所以我们说它是依赖于集合而存在的 Iterator常用方法 E next():返回迭代中的下一个元素 boolean hasNext():若迭代具有更多元素,则返回true */ public class CollectionDemo3 { public static void main(String[] args) { Collection<String> collection = new ArrayList<>(); collection.add("hello"); collection.add("java"); collection.add("world"); Iterator<String> it = collection.iterator(); //ArrayList中iterator()源码 /*public Iterator<E> iterator() { return new Itr(); } private class Itr implements Iterator<E> { ... } */ /*System.out.println(it.next()); System.out.println(it.next()); System.out.println(it.next()); // System.out.println(it.next()); // exception*/ /*if(it.hasNext()){ System.out.println(it.next()); } if(it.hasNext()){ System.out.println(it.next()); } if(it.hasNext()){ System.out.println(it.next()); } if(it.hasNext()){ System.out.println(it.next()); //此行未执行 }*/ while (it.hasNext()){ // System.out.println(it.next()); String str = it.next(); System.out.println(str); } } }