Java list利用遍历进行删除操作3种方法解析
程序员文章站
2022-06-12 11:06:37
这篇文章主要介绍了java list利用遍历进行删除操作3种方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
java三种遍...
这篇文章主要介绍了java list利用遍历进行删除操作3种方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
java三种遍历如何进行list的便利删除:
1、for循环:
常见初五写法:(由于下标问题达不到想要效果)
for(int i=0;i<list.size();i++){ if(list.get(i).equals("del")) list.remove(i); }
应该改为:(倒序操作避免下标问题)
int size = list.size(); for(int i=size-1;i>=0;i--){ if(list.get(i).equals("del")) list.remove(i); }
2、增强for循环(foreach循环):
常见错误:(会抛出concurrentmodificationexception)
for(string x:list){ if(x.equals("del")) list.remove(x); }
应改为:
//cowlist为原list copyonwritearraylist<record> list = new copyonwritearraylist<record>(cowlist); for(string x:list){ if(x.equals("del")) list.remove(x); }
3、iterator遍历:(注意要是用迭代器的remove方法,不能使用list的remove方法)
iterator<string> it = list.iterator(); while(it.hasnext()){ string x = it.next(); if(x.equals("del")){ it.remove(); } }
最好使用iterator遍历。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。