迭代器
迭代器是一个对象,它的工作是遍历并选择序列中的对象,它提供了一种访问一个容器对象中的各个元素,而又不必暴露该对
象内部细节的方法.通过迭代器,开发人员就不许要了解容器底层的结构,就可以实现对容器的遍历.由于创建迭代器的代价小
,因此迭代器通常被称为轻量级的容器.
迭代器的使用注意事项:
1) 使用容器的iterator()方法返回一个Iterator,然后通过Iterator的next()方法返回第一个元素。
2) 使用Iterator的hasNext()方法判断容器中是否还有元素,如果有,可以使用next()方法获取下一个元素。
3) 可以通过remove()方法删除迭代器返回的元素。
Iterator支持派生的兄弟成员。ListIterator只存在于List中,支持在迭代器期间向List中添加或删除元素,并且可以在List中
双向滚动。
public class Test {
public static void main(String[] args){
List<String> list = new LinkedList<String>();
list.add("first");
list.add("second");
list.add("third");
list.add("fourth");
for(Iterator<String> iter = list.iterator();iter.hasNext();){
String str = iter.next();
System.out.println(str);
}
}
}
引申:Iterator与ListIterator有什么区别?
Iterator只能正向遍历集合,使用与获取移除元素.ListIterator继承自Iterator,专门针对Lis,可以从两个方向来遍历List,同
时支持元素的修改。
迭代器是一个对象,它的工作是遍历并选择序列中的对象,它提供了一种访问一个容器对象中的各个元素,而又不必暴露该对
象内部细节的方法.通过迭代器,开发人员就不许要了解容器底层的结构,就可以实现对容器的遍历.由于创建迭代器的代价小
,因此迭代器通常被称为轻量级的容器.
迭代器的使用注意事项:
1) 使用容器的iterator()方法返回一个Iterator,然后通过Iterator的next()方法返回第一个元素。
2) 使用Iterator的hasNext()方法判断容器中是否还有元素,如果有,可以使用next()方法获取下一个元素。
3) 可以通过remove()方法删除迭代器返回的元素。
Iterator支持派生的兄弟成员。ListIterator只存在于List中,支持在迭代器期间向List中添加或删除元素,并且可以在List中
双向滚动。
public class Test {
public static void main(String[] args){
List<String> list = new LinkedList<String>();
list.add("first");
list.add("second");
list.add("third");
list.add("fourth");
for(Iterator<String> iter = list.iterator();iter.hasNext();){
String str = iter.next();
System.out.println(str);
}
}
}
引申:Iterator与ListIterator有什么区别?
Iterator只能正向遍历集合,使用与获取移除元素.ListIterator继承自Iterator,专门针对Lis,可以从两个方向来遍历List,同
时支持元素的修改。