集合中Iterator迭代器的使用以及实现原理。

Posted hnwxp

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了集合中Iterator迭代器的使用以及实现原理。相关的知识,希望对你有一定的参考价值。

collection集合元素通用的获取方式,在取之前先要判断集合中有没有元素,如果有就把这个元素取出来,继续在判断,如果还有就再取出来,一直把集合中的元素全取出来,这种去出方式叫做迭代。

迭代器的作用就是获取集合中的元素的方式。

接口iterator有两个抽象的方法:

  • boolean hasnext()判断集合中有没有可以被取的元素。
  • next() 去除元素中的下一个元素。

演示代码如下:

public class Iterator_Demo {
public static void main(String[] args) {
    Collection<String> coll = new ArrayList<String>();
    coll.add("abc");
    coll.add("fgh");
    coll.add("cde");
//    arraylist    重写抽象方法itrator(),返回Iterator接口的实现类的对象。
    Iterator<String> it = coll.iterator();
    while(it.hasNext()){
        String s =it.next();
        System.out.println(s);
    }
    
    
}
}

技术图片

 

 

如上图所示当实例化iterator对象的时候,指针在-1的位置当调用next()方法的时候,指针向下移动一位,直到hasnext()判断没有元素的时候退出循环。

以上是关于集合中Iterator迭代器的使用以及实现原理。的主要内容,如果未能解决你的问题,请参考以下文章

Java集合使用Iterator遍历Collection以及迭代器Iterator的执行原理

java-集合框架3-迭代器的使用

C++ 迭代器iterator的实现原理

Stream和迭代器的区别

ES6中的迭代器(Iterator)和生成器(Generator)

Java自用Java集合-Iterator迭代器接口(为容器而生)