迭代器应用:
list l = new ArrayList();
l.add("aa");
l.add("bb");
l.add("cc");
for (Iterator iter = l.iterator(); iter.hasNext();) {
String str = (String)iter.next();
System.out.println(str);
}
/*迭代器用于while循环
Iterator iter = l.iterator();
while(iter.hasNext()){
String str = (String) iter.next();
System.out.println(str);
}
*/
我们之前常用的迭代结构是:
int i;
for (i = 0; i < length; i++)
{
// code here
}
这里java的迭代器是对简单循环的一种面向对象的抽象,更接近自然语言。IT工程师不用自己去初始化循环,设计循环结束判断和循环增量。
仅仅是向迭代器询问hasNext(),以及next()方法获得对象。
在面向对象的程序设计中避免对循环的手动管理,多练习用迭代器来“托管”
使用迭代器的优点是,对对象集合的遍历方法与数据结构分离,比如对象集合可能是ArrayList,可能是LinkedList。也许在开发过程中使用了ArrayList,
而在系统性能优化时,更改为LinkedList。数据结构改变了,对于对象集合遍历的方法影响很小,工作量减小,潜在风险减少。