迭代器(以不重写代码就可以应用于不同类型的容器),他是一个对象,遍历并选择序列中的对象,我们不用关心该序列底层的结构。通常被称为轻量级,创建他的代价比较小,经常可以见到对迭代器有些奇怪的限制;例如:Java的Iterator只能单向移动,他只能用来:
1、使用方法iterator()要求容器返回一个Iterator。返回序列的第一个元素
2、next()获得下一个元素
3、hasNext()检查序列是否还有元素
4、remove()将迭代器新近返回的元素删去
使用方法:
List<Fruit> fruits=Fruit.arrayList(12);
Iterator<Fruit> it=fruits.iteraor();
1、 while(it.hasNext){
Fruit f=it.next();
System.out.println(f.id());
}
2、for(Fruit f:fruits)
{ System.out.println(f.id());}
最重要的是有了Iterator就不必为了容器中的元素数量操心了,那是hasNext和next()关心的事情!