Iterator 接口

java.util.Itertor接口
迭代,是Collection汇合元素的通用获取形式
Iterator也是有泛型的!!
先判断汇合中有没有元素,有就取出来,再持续判断,再持续取,直至全副取出。
boolean hasNext()
判断是否有元素

next()
有元素,则取出元素
remove()

获取实现类的形式:
Collection接口中有个办法,iterator(),这个办法返回的就是迭代器的实现类对象。
Iterator也是有泛型的!!迭代器的泛型跟着汇合走,汇合什么泛型,迭代器什么泛型

1.应用汇合中的办法iterator()获取迭代器的实现类对象,应用Iterator接口接管(多态);
2.应用Iterator接口中的办法hasNext判断是否有下一个元素;
3.应用Iterator接口中的办法next取出汇合中的下一个元素。
        Collection<String> coll = new ArrayList<>();        coll.add("2");        coll.add("da");        coll.add("2ue");        Iterator<String> it = coll.iterator();        while (it.hasNext()) {            String s = it.next();            System.out.println(s);        }

实现原理:
获取迭代器实现类对象,并把指针指向汇合的-1索引

Iterator<String> it = coll.iterator();

next();
除了取出下一个元素,并且将指针向后挪动一位。

加强for循环

底层应用的也是迭代器,应用for循环的格局,简化了迭代器的书写
用来遍历汇合和数组
格局:
for(汇合/数组的数据类型 变量名: 汇合名/数组名) {

sout(变量名);

}

        ArrayList<String> s2 = new ArrayList<>();        s2.add("dsd");        s2.add("222");        s2.add("34e");        for (String s :s2) {            System.out.println(s);        }