Java基础Iterator迭代器

Java基础——使用Iterator遍历集合

在Iterator类中有三个方法:
Object next():返回迭代器刚越过的元素的引用,返回值是Object,需要强制转换成自己需要的类型

boolean hasNext():判断容器内是否还有可供访问的元素

void remove():删除迭代器刚越过的元素

iterator用法主要是对对象进行迭代,然后循环出对象属性,下面我们看看如何使用吧:

public static void main(String[] args) {
    
    
        ArrayList arr = new ArrayList();
        arr.add("AA");
        arr.add("BB");
        arr.add("CC");
        arr.add("DD");
        arr.add("EE");

        //使用方法iterator()要求容器返回一个Iterator
        Iterator i  = arr.iterator();

        //使用hasNext()检查序列中是否还有元素。
        while (i.hasNext()){
    
    
            //使用next()获得序列中的下一个元素。
            String  str = (String) i.next();
            System.out.println(str);
        }
    }

另外在JDK1.8中还引入了一个新的默认方法: forEachRemaining() 方法,作用和forEach 一样。

public static void main(String[] args) {
    
    
        ArrayList arr = new ArrayList();
        arr.add("AA");
        arr.add("BB");
        arr.add("CC");
        arr.add("DD");
        arr.add("EE");

        //使用方法iterator()要求容器返回一个Iterator
        Iterator i  = arr.iterator();

		i.forEachRemaining(new Consumer() {
    
    
            @Override
            public void accept(Object o) {
    
    
                System.out.println((String)o);
            }
        });
        
        System.out.println("==========================");
        
        //以上写法可以使用lambda表达式简化代码
        //  i.forEachRemaining(String -> System.out.println(String));

        System.out.println("==========================");

        //使用forEach方法遍历集合
        arr.forEach(String -> System.out.println(String));
    }

以上方法否可以遍历集合。

猜你喜欢

转载自blog.csdn.net/weixin_47316336/article/details/109023991