如何将两个List进行比较过滤出所要的数据。
现在有两个list,分别是list1,list2.
两个list都有相同的字段只是数据不一样,如:
list1:a list2:b
1 2
2 3
3 4
然后我想得出的结果是list1中有的而list2中没有的数据。
就是比较后,list1只有‘1’这个数据。
求一个详细而简单的例子!
刚学JSP,java也不怎么行。。。望解答,求理解!!
谢谢!
------解决方案--------------------list1.removeAll(list2);
------解决方案--------------------
List list1 = new ArrayList();
List list2 = new ArrayList();
list1.add(1);
list1.add(2);
list1.add(3);
list2.add(2);
list2.add(3);
list2.add(4);
list1.removeAll(list2);
System.out.println(Arrays.toString(list1.toArray()));
------解决方案--------------------List list1 = new ArrayList();
List list2 = new ArrayList();
list1.add(1);
list1.add(46);
list1.add(2);
list1.add(3);
list2.add(2);
list2.add(3);
list2.add(4);
List list3 = new ArrayList();
for(int i=0;i<list1.size();i++)
{
int a=(Integer) list1.get(i);
int sf=0;
for(int j=0;j<list2.size();j++)
{
int b=(Integer)list2.get(j);
if(a==b)
{
sf=sf+1;
}
}
if(sf==0)
{
list3.add(a);
}
}
for(int i=0;i<list3.size();i++)
{
System.out.println(list3.get(i));
}