美文网首页
迭代器模式

迭代器模式

作者: Minstrel_a7ca | 来源:发表于2018-07-14 22:11 被阅读0次

What

提供一种方法访问一个容器(container)对象中各个元素,而又不需暴露该对象的内部细节。

Why

为容器而生,解决容器的遍历问题。它将对集合进行遍历的功能封装成独立的Iterator。

IN JAVA

Iterable(可迭代)

JAVA中定义了接口 Iterable<T>,实现了这个接口允许对象成为 "foreach" 语句的目标(比如for(String s:strs)),Collection继承了Iterable。
继承或实现该接口,说明对象可迭代。需要实现方法Iterator<E> iterator(),作用返回一个Iterator对象。


Iterator(迭代器)

操作 简述
E next() 返回迭代的下一个元素。
boolean hasNext() 是否还有可迭代元素。
void remove() 从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。

实例

public static <E> void printList(List<E> l){
Iterator<E> iterator = l.iterator();
  while (iterator.hasNext()) {
    E s = iterator.next();
    System.out.println(s);
  }
}

相关文章

网友评论

      本文标题:迭代器模式

      本文链接:https://www.haomeiwen.com/subject/jocupftx.html