19 //使用迭代器遍历ArrayList集合
20 Iterator<String> listIt = list.iterator();
21 while(listIt.hasNext()){ 22 System.out.println(listIt.next()); 23 } 24 //使用迭代器遍历Set集合 25 Iterator<String> setIt = set.iterator(); 26 while(setIt.hasNext()){ 27 System.out.println(listIt.next()); 28 } 29 //使用迭代器遍历LinkedList集合 30 Iterator<String> linkIt = linkList.iterator(); 31 while(linkIt.hasNext()){ 32 System.out.println(listIt.next()); 33 }
因为在你迭代之前,迭代器已经被通过list.itertor()创建出来了,如果在迭代的过程中,又对list进行了改变其容器大小的操作,
那么Java就会给出异常。因为此时Iterator对象已经无法主动同步list做出的改变,Java会认为你做出这样的操作是线程不安全的,
就会给出善意的提醒(抛出ConcurrentModificationException异常)
List<String> list = new ArrayList<String>();
list.add("张三1");
list.add("张三2");
list.add("张三3");
list.add("张三4");
//使用迭代器遍历ArrayList集合
Iterator<String> listIt = list.iterator();
while(listIt.hasNext()){
Object obj = listIt.next();
if(obj.equals("张三3")){
list.remove(obj);
}
}
https://www.cnblogs.com/zyuze/p/7726582.html
java迭代器 常用
猜你喜欢
转载自www.cnblogs.com/doyourwant/p/11374974.html
今日推荐
周排行