您的位置:首页 > 编程语言 > Java开发

List中安全地删除对象

2017-02-07 14:56 274 查看
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() 方法是个安全的做法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java List