迭代器的作用及Iterator与Enumeration的区别

迭代器将遍历序列的操作和序列底层(存储结构)相分离。可以说:迭代器统一了对容器的访问方式,而不用在乎容器的结果

  1. 使用方法iterator()要求容器返回一个Iterator。Iterator将准备好返回序列的第一个元素;

  2. 使用next()获取序列中下一个元素;

  3. 使用hasNext()检查序列中是否有元素;

  4. 使用remove()将迭代器新返回的元素删除。

Iterator与Enumeration的区别

  •  Enumeration的速度是Iterator的两倍,也使用更少的内存。Enumeration是非常基础的,也满足了基础的需要。

  • 但是,与Enumeration相比,Iterator更加安全,因为当一个集合正在被遍历的时候,它会阻止其它线程去修改集合。

  • 迭代器取代了Java集合框架中的Enumeration。迭代器允许调用者从集合中移除元素,而Enumeration不能做到。为了使它的功能更加清晰,迭代器方法名已经经过改善。

猜你喜欢

转载自blog.csdn.net/qq_40531768/article/details/89336731