21_迭代器

迭代器模式(Iterator Pattern)是 Java 和 .Net 编程环境中非常常用的设计模式。这种模式用于顺序访问集合对象的元素,不需要知道集合对象的底层表示。
迭代器模式属于行为型模式。
意图:提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。
主要解决:不同的方式来遍历整个整合对象。

代码样例:

```
public interface Iterator {
public boolean hasNext();
public Object next();
}

public interface Container {
public Iterator getIterator();
}

public class NameRepository implements Container {
public String names[] = {“Robert” , “John” ,”Julie” , “Lora”};

@Override
public Iterator getIterator() {
return new NameIterator();
}

private class NameIterator implements Iterator {

int index;

@Override
public boolean hasNext() {
   if(index < names.length){
      return true;
   }
   return false;
}

@Override
public Object next() {
   if(this.hasNext()){
      return names[index++];
   }
   return null;
}     

}
}

public class IteratorPatternDemo {

public static void main(String[] args) {
NameRepository namesRepository = new NameRepository();

for(Iterator iter = namesRepository.getIterator(); iter.hasNext();){
   String name = (String)iter.next();
   System.out.println("Name : " + name);
}  

}
}

``

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×