java.util.Iterator

    技术2023-08-27  131

    java.util.Iterator接口:迭代器(对集合进行遍历)

    有两个常用方法

    boolean hasNext() 判断集合中还有没有下一个元素,如果仍有元素可以迭代,则返回true E netx() 返回迭代的下一个元素。

    Iterator迭代器是一个接口,无法直接使用,需要使用Iterator接口实现类对象,获取实现类的方式比较特殊 Collection接口中有一个方法叫 iterator(),这个方法返回的就是迭代器实现类对象

    迭代器的使用步骤

    使用集合中的方法 iterator()获取迭代器的实现类对象,使用 Iterator 接口接收(多态)使用 Iterator 接口中的方法 hasNext 判断是否有下一个元素使用 Iterator 接口中的方法 next 取出集合中的下一个元素

    代码实现

    package demoIterator; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; public class demomain { public static void main(String[] args) { //创建一个集合对象 Collection<String> coll = new ArrayList<>(); coll.add("小王"); coll.add("小明"); coll.add("小红"); //多态 接口 实现类对象 Iterator<String> it = coll.iterator(); //使用Iterator接口中的方法hasNext判断还有没有下一个元素 boolean b = it.hasNext(); System.out.println(b); //true String s = it.next(); System.out.println(s); // 小王 s = it.next(); System.out.println(s); // 小明

    迭代器实现原理

    Iterator it = coll.iterator(); 获取迭代器的实现类对象,并且会把指针指向集合的 -1 索引

    next() 做了两件事情:1 取出下一个元素 2 会把指针向后移动一位

    Processed: 0.014, SQL: 9