Iterator的remove方法可保证从源集合中安全地删除对象
2014-02-19 20:12
393 查看
import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class IteratorTest{ public static void main(String[] args) { List<String> list = new ArrayList<String>(); list.add("Test1"); list.add("Test2"); list.add("Test3"); list.add("Test4"); list.add("Test5"); for(Iterator<String> it = list.iterator();it.hasNext();){ if(it.next().equals("Test3")){ it.remove(); } } for(String s : list){ System.out.println(s); } } }Iterator
支持从源集合中安全地删除对象,只需在 Iterator
上调用 remove() 即可。这样做的好处是可以避免 ConcurrentModifiedException ,这个异常顾名思意:当打开 Iterator
迭代集合时,同时又在对集合进行修改。有些集合不允许在迭代时删除或添加元素,但是调用 Iterator
的 remove() 方法是个安全的做法。
相关文章推荐
- 为什么Iterator的remove方法可保证从源集合中安全地删除对象,而在迭代期间不能直接删除集合内元素
- Iterator的remove方法可保证从源集合中安全地删除对象
- Iterator的remove方法可保证从源集合中安全地删除对象(转)
- 如何边遍历集合边删除元素--使用Iterator中的remove()方法
- Iterator对象的remove方法是迭代过程中删除元素的唯一方法
- Iterator对象的remove方法是迭代过程中删除元素的唯一方法
- 使用ArrayList集合,对其添加100个不同的元素: 1.使用add()方法将元素添加到ArrayList集合对象中; 2.调用集合的iterator()方法获得Iterator对象,并调用Ite
- Iterator 接口的使用 所有的Collection接口类都有一个iterator方法 ,Iterator对象的删除
- for循环删除(ArrayList.remove)及改进方法及对象在内存中的理解
- Java集合 iterator.remove()方法详解
- 泛型List<T>中方法Remove不能删除对象的解决
- List集合的remove一个对象的方法
- 使用Iterator的remove方法删除元素
- 关于List,ArrayList中remove(object obj)方法不能删除对象问题
- 【Android】ArrayList通过remove方法删除元素对象源码分析
- 使用ArrayList集合,对其添加100个不同的元素: 1.使用add()方法将元素添加到ArrayList集合对象中; 2.调用集合的iterator()方法获得Iterator对象,并调用Ite
- 黑马程序员:Java基础——List集合共性方法,Iterator迭代和集合具体对象的特点
- List在执行remove方法不能删除指定的对象
- Java 集合之List 集合的删除方法顺序分析以及remove和removeAll区别
- for循环删除(ArrayList.remove)及改进方法及对象在内存中的理解