Java集合输出
实际开发中,集合输出有四种形式。Iterator,ListIterator双向迭代输出,Enumeration枚举输出,foreach输出。绝大部分都用Iterator或者foreach输出。
Iterator输出
Iterator使用方式
这输出方式是官方推荐,使用最多的遍历方式。用到两个函数,hasNext()
判断是否存在下一个元素,next()
函数,返回当前元素。具体代码如下:
Set<String> set = new HashSet<String>();
set.add("hello");
set.add("world");
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());;
}
Iterator remove方法
- Iterator 里面有remove方法,使用时要注意(如果不是必须,就不要使用)。Collection里也有remove方法,但是在迭代中使用了Collection的remove方法会导致迭代失败。只能使用Iterator里的remove方法,此时原始数据中的数据也被删除了。
- 总结:迭代时使用
Collection.remove
会出现并发更新异常,只能通过Iterator.remove
删除数据
ListIterator
能进行双向迭代处理,但是只能时List子类才能使用这种方式,也就是说ListIterator是为List专门准备的。
Enumeration
Enumeration 只为Vector类服务,想获得Enumeration对象,只能通过Vector类的方法。
foreach
和Iterator类似,可以使用
来源:oschina
链接:https://my.oschina.net/liuxiaofan0/blog/4296689