Java如何循环删除某集合中的多个元素
作者:网络转载 发布时间:[ 2013/1/31 11:08:49 ] 推荐标签:
可以看到,Iterator删除了元素,并且把游标重新置为正确的位子。只要没有其他线程同时改变该集合,不会有任何问题。
以下使自己写得一小段代码,分了三种情况进行说明:
package com.iss;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Test
{
/**
* @param args
*/
public static void main(String[] args)
{
// TODO Auto-generated method stub
List<String> list = new ArrayList();
for(int i = 0; i<10; i++)
{
list.add("This is" + i);
}
System.out.println("hello");
list.remove("This is1");
for(Iterator iter = list.iterator(); iter.hasNext(); )
{
String str = (String) iter.next();
if(str.indexOf("1") != -1)
{
//情况一
iter.remove();
//情况二
list.remove(str);
}
}
//情况三
for(String strs : list)
{
if(strs.indexOf("1") != -1)
{
list.remove(strs);
System.out.println(strs);
}
}
for(String strT : list)
{
System.out.println(strT);
}
}
}
package com.iss; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub List<String> list = new ArrayList(); for(int i = 0; i<10; i++) { list.add("This is" + i); } System.out.println("hello"); list.remove("This is1"); for(Iterator iter = list.iterator(); iter.hasNext(); ) { String str = (String) iter.next(); if(str.indexOf("1") != -1) { //情况一 iter.remove(); //情况二 list.remove(str); } } //情况三 for(String strs : list) { if(strs.indexOf("1") != -1) { list.remove(strs); System.out.println(strs); } } for(String strT : list) { System.out.println(strT); } } }
这三种中只有一种有用,你可以试一试!
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11