比较两个List里面的数据,如果有不同的就取出来,怎么取??

例如这样的两个数组

 [270, 351, 371, 471, 731, 791]
[270, 351, 371, 471, 731]
 List toReturn = new ArrayList(a);
toReturn.removeAll(b);

双重for循环啊朋友

list 集合 有contains(Object o)方法嘛 返回 boolean; 拿一个集合循环另一个用contains比较;加个 if 判断 真就给取出来你要打印控制台就sysout,你要装map还是另一个list先循环外new一个,成立就在if里面add不就成了嘛!

假设a= [270, 351, 371, 471, 731, 791],b=[270, 351, 371, 471, 731]
ArrayList list = new ArrayList();
for(int i,i<= a.length){
for( j = 0,j<= b.length){
if(a[i] == b[j]){
........
}
}
}

求交集,之后在删除交集
list1 [270, 351, 371, 471, 731, 791]
list2 [270, 351, 371, 471, 731]
list3 []
Collections.copy(list3,list1);
list3.retainAll(list2);
list1.removeAll(list3);
list2.removeAll(list3);
这样list1与list2中的元素就没有从服了

这篇文章讲解的很详细。http://www.cnblogs.com/handbang/p/6209433.html

public class Test {

public static void main(String[] args) {
int [] array1 = {270, 351, 371, 471, 731, 791};

    int [] array2 = {270, 351, 371, 471, 731};

    for(int i = 0;i<array1.length;i++){
        for(int j = 0;j<array2.length;j++){
            if(array1[i]==array2[j]){
                System.out.println("相同的是"+array1[i]);
            }
        }
    }
}

}

使用集合自带的方法交叉删除
public static void main(String[] args){
Object[] one = {270, 351, 371, 471, 731, 791};
Object[] two = {270, 351, 371, 471, 731, 888};
//转为集合
List oneList = new ArrayList(Arrays.asList(one));
List tempList = new ArrayList(Arrays.asList(one));
List twoList = new ArrayList(Arrays.asList(two));
System.out.println("one数组转为集合:" + oneList);
System.out.println("tow数组转为集合:" + twoList);
oneList.removeAll(twoList);
twoList.removeAll(tempList);
System.out.println(oneList + "---" + twoList);

}