迭代器(Iterator) 模式,又叫做游标(Cursor )模式
public interface Iterator {
boolean hasNext();//是否有下一个,有返回true,否则返回false
Object next();// 遍历到下一个
void remove();// 删除当前元素
}
遍历
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
/**
* 通过迭代函数访问类集,步骤如下
* 通过调用类集的iterator()获得对类集的迭代函数
* 建立一个调用hasNext()的循环,只要hasNext()返回true,就进行循环迭代
* 在循环内部,通过调用next()方法得到每一个元素
* hasNext()相当一个指针,最开始指针在第一个元素的前面,
* 循环一次指针移动到下一个元素的后面,下下一个元素的前面
* 每一种集合类返回的Iterator具体类型可能不同,
* Array可能返回ArrayIterator,Set可能返回 SetIterator,
* Tree可能返回 TreeIterator,但是它们都实现了Iterator接口
* 因此,客户端不关心到底是哪种Iterator,它只需要获得这个Iterator接口即可,这就是面向对象的优势
*/
public class Demo {
public static void main(String[] args) {
Set set = new HashSet();
set.add("a");
set.add("b");
set.add("c");
Iterator ite = set.iterator();
while(ite.hasNext()){
System.out.println(ite.next());
}
}
}