1 迭代器模式
2 实现代码
interface Iterator{
public boolean hasNext();
public Object next();
}
interface Container{
public Iterator getIterator();
}
class NameContainer implements Container{
private String[] names = {"zhangsan", "lisi", "wangwu"};
@Override
public Iterator getIterator() {
return new NameIterator();
}
class NameIterator implements Iterator{
private int index = 0;
@Override
public boolean hasNext() {
if (index < names.length){
return true;
}
return false;
}
@Override
public Object next() {
return names[index++];
}
}
}
public class Test{
public static void main(String[] args){
Container container = new NameContainer();
for (Iterator iterator = container.getIterator(); iterator.hasNext();){
System.out.println(iterator.next());
}
}
}