java中 list怎么去除多条数据?
例如:importjava.util.ArrayList;publicclassTest{publicstaticvoidmain(String[]args){Strin...
例如:
import java.util.ArrayList;
public class Test {
public static void main(String[] args) {
String a= "";
ArrayList<String> list = new ArrayList<String>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
for (int i = 0; i < list.size(); i++) {
a = list.get(i);
if("3".equals(a)){
list.remove(i);
}
if("4".equals(a)){
list.remove(i);
}
}
for (int i = 0; i < list.size(); i++) {
a=list.get(i);
System.out.println(a);
}
}
} 展开
import java.util.ArrayList;
public class Test {
public static void main(String[] args) {
String a= "";
ArrayList<String> list = new ArrayList<String>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
for (int i = 0; i < list.size(); i++) {
a = list.get(i);
if("3".equals(a)){
list.remove(i);
}
if("4".equals(a)){
list.remove(i);
}
}
for (int i = 0; i < list.size(); i++) {
a=list.get(i);
System.out.println(a);
}
}
} 展开
4个回答
展开全部
楼上的回答的都太不负责人了,自己不都不确定,怎么能把别人教清楚
一种是用循环,一个个移除,一种是用removeAll函数
我给出removeAll的例子
public static void main(String[] args)
{
List<Integer> listOne = new ArrayList<Integer>();
//add 8 elements
listOne.add(1);
listOne.add(2);
listOne.add(3);
listOne.add(4);
listOne.add(5);
listOne.add(6);
listOne.add(7);
listOne.add(8);
List<Integer> listTwo = new ArrayList<Integer>();
//add 4 elments
listTwo.add(2);
listTwo.add(3);
listTwo.add(4);
listTwo.add(5);
listOne.removeAll(listTwo);//remove the elements in listOne which also in listTwo
System.out.println(listOne);//result [1,6,7,8]
}
一种是用循环,一个个移除,一种是用removeAll函数
我给出removeAll的例子
public static void main(String[] args)
{
List<Integer> listOne = new ArrayList<Integer>();
//add 8 elements
listOne.add(1);
listOne.add(2);
listOne.add(3);
listOne.add(4);
listOne.add(5);
listOne.add(6);
listOne.add(7);
listOne.add(8);
List<Integer> listTwo = new ArrayList<Integer>();
//add 4 elments
listTwo.add(2);
listTwo.add(3);
listTwo.add(4);
listTwo.add(5);
listOne.removeAll(listTwo);//remove the elements in listOne which also in listTwo
System.out.println(listOne);//result [1,6,7,8]
}
展开全部
再建一个ArrayList,将要删除的数据放入此集合,然后原来的list直接remove要删除的list
追问
这个你试过?你是说
ArrayList list1 = new ArrayList();
for (int i = 0; i < list.size(); i++) {
a = list.get(i);
if("3".equals(a)){
list1.add(list.get(i));
}
if("4".equals(a)){
list1.add(list.get(i));
}
}
这个样子,然后再list.remove(list1);?????
追答
代码写出来之后再ide中运行,不就行了,对不对就知道了,具体方法名可能有问题,我一般想不起来之后,直接用ide的帮助显示
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以把list元素转换成HashMap,利用Map特性直接剔除了重复元素。
追问
list怎么转成hashmap?能给我个具体的代码吗?
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最好用临时List存储,不要操作原List
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询