zoukankan      html  css  js  c++  java
  • java容器-Iterator

    1介绍

      java中的容器主要是Collection<E>的子类型,即都实现了Iterable<E>接口,即使是Map类型,也有entrySet方法可以获得该Map的所有元素组成的Set。在java中的iterator实现利用内部类的机制,可以十分方便的实现。借助内部类可以直接访问外部类的所有方法和字段,因此iterator()返回的Iterator<E>类型,是实现了公共Iterator<E>接口的类型,这样既可以封装容器的迭代器的具体实现,又能给外部提供统一的访问接口,既安全有便捷。

     实现了Iterable<E>的类型,均可以通过iterator()获得该容器上的迭代器Iterator<E>实例

    2.主要子接口

      ListIterator<E>

    3.主要方法

    1. hasNext() : boolean,判断该容器是否还有下一个元素
    2. next() : E,返回容器下一个元素
    3. default remove(): void, 移除当前迭代器指向的元素,即最后一次调用next()返回的元素,默认实现抛出UnSupportedOperationException;

    4.default 方法(自jdk1.8)

    1. default forEachRemaining(Consumer<? extends E> action) : void,对每一个容器中元素调用action.accept(element) 

    5.总结

       迭代器模式在java中的使用更加便捷和安全。通过Iterable接口,Collection类型可以用于foreach循环,也使得其他类型可以方便的访问该容器。而Iterator中iterator()方法,也恰恰返回了Iterator<E>,这样容器类就给外部提供了统一的访问接口。

  • 相关阅读:
    解决ecshop进入后台服务器出现500的问题
    Java8新特性(拉姆达表达式lambda)
    使用Optional优雅处理null
    Arrays.asList 存在的坑
    Java提供的几种线程池
    冒泡排序及优化详解
    如何让MySQL语句执行加速?
    关于https的五大误区
    127.0.0.1和0.0.0.0地址的区别
    宽带网络技术-大题重点
  • 原文地址:https://www.cnblogs.com/zhedan/p/7627210.html
Copyright © 2011-2022 走看看