其他分享
首页 > 其他分享> > Lterator接口介绍和迭代器的代码实现

Lterator接口介绍和迭代器的代码实现

作者:互联网

Lterator接口介绍

在程序开发中J经常需要遍历集合中的所有元素。针对这种需求,JDK专门提供了一个接口

java.util.Iterator 。(Iterator 接口也是Java集合中的一员,但它与collection、(Map接口有所不同collection接口与Map接口主要用于存储元素,而Iterator 主要用于迭代访问(即遍历) collection 中的元 素,因此 Iterator 对象也被称为迭代器。

想要遍历Collection集合,那么就要获取该集合迭代器完成迭代操作,下面介绍一下获取迭代器的方法

public Iterator iterator():获取集合对应的迭代器,用来遍历集合中的元素的。、

下面介绍一下迭代的概念︰

  迭代:即Collection集合元素的通用获取方式。在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出来,继续在判断,如果还有就再取出出来。一直把集合中的所有元素全部取出。这种取出方式专业术语称为迭代。

lterator接口的常用方法如下:

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

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

  java.util.iterator接口:迭代器(对集合进行遍历)有两个常用的方法

  boolean hasNext(如果仍有元素可以迭代,则返回true。

判断集合中还有没有下一个元素,

  有就返回true,没有就返回falseE next())返回迭代的下一个元素。

取出集合中的下一个元素

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

  Iterator<E> iterator()返回在此 collection 的元素上进行迭代的迭代器。

迭代器的使用步骤(重点):

  1.使用集合中的方法iterator()获取迭代器的实现类对象,使用Iterator接口接收(多态)

  2.使用Iterator接口中的方法hasNext半断还有没有下一个元素

  3.使用Iterator接口中的方法next取出集合中的下一个元素l

迭代器的代码实现

public static void main(String[] args) {
        //创建一个集合对象
        Collection<String> coll = new ArrayList<>();//往集合中添加元素
        coll.add("混子");
        coll.add("科比");
        coll.add("麦迪");
        coll.add("詹姆斯");
        coll.add("艾弗森");
        //使用集合中的方法iterator()获取迭代器的实现类对象,使用Iterator接口接收(多态)
        // 注意:
        //Iterator<E>接口也是有泛型的,迭代器的泛型跟着集合走,集合是什么泛型,迭代器就是什么泛型
        //多态接口
        Iterator<String> it = coll.iterator();
        while (it.hasNext()){
            String e = it.next();
            System.out.println(e);
        }
        System.out.println("===============");
        for(Iterator<String> it2 =  coll.iterator();it2.hasNext()){
            String next = it2.next();
            System.out.println(next);
        }

 

public static void main(String[] args) {
        //创建一个集合对象
        Collection<String> coll = new ArrayList<>();//往集合中添加元素
        coll.add("混子");
        coll.add("科比");
        coll.add("麦迪");
        coll.add("詹姆斯");
        coll.add("艾弗森");
        //使用集合中的方法iterator()获取迭代器的实现类对象,使用Iterator接口接收(多态)
        // 注意:
        //Iterator<E>接口也是有泛型的,迭代器的泛型跟着集合走,集合是什么泛型,迭代器就是什么泛型
        //多态接口
        Iterator<String> it = coll.iterator();



        //2.使用Iterator接口中的方法hasNext判断还有没有下一个元素
        boolean b = it.hasNext();
        System.out.println(b);
        //i/3.使用Iterator接口中的方法next取出集合中的下一个元素
        String s = it.next();
        System.out.println(s);


        b = it.hasNext();
        System.out.println(b);
        s= it.next();
        System.out.println(s);

        b = it.hasNext();
        System.out.println(b);
        s= it.next();
        System.out.println(s);

        b = it.hasNext();
        System.out.println(b);
        s= it.next();
        System.out.println(s);

        b = it.hasNext();
        System.out.println(b);
        s= it.next();
        System.out.println(s);
    }

 

标签:迭代,Iterator,Lterator,接口,println,coll,集合
来源: https://www.cnblogs.com/yuzong/p/16448499.html