日期:2014-05-17  浏览次数:20724 次

list查询数据
list1 有1,2,3,4
list2有2,3
我要他们不重复的1,4,怎么得到其中结果。只用比对

------解决方案--------------------
list1.removeAll(list2);

剩下的就是了。
------解决方案--------------------
用循环吧 虽然有点笨
------解决方案--------------------
那就只能是双重循环了。。。效率低点,但是如果元素不多就无所谓。
------解决方案--------------------
Java code
import java.util.ArrayList;
import java.util.List;

class Main {

    public static void main(String args[]) {
        List<Integer> list1 = new ArrayList<>();
        List<Integer> list2 = new ArrayList<>();

        list1.add(1);
        list1.add(2);
        list1.add(3);
        list1.add(4);

        list2.add(2);
        list2.add(3);
        
        for (int j = 0; j < list2.size(); j++)
            for (int i = 0; i < list1.size(); i++)
                list1.remove(list2.get(j));
        System.out.println(list1);
    }

}

------解决方案--------------------
6楼的 for (int i = 0; i < list1.size(); i++)无用代码


 public static void main(String args[]) {
List<Integer> list1 = new ArrayList<Integer>();
List<Integer> list2 = new ArrayList<Integer>();

list1.add(1);
list1.add(2);
list1.add(3);
list1.add(4);
list2.add(2);
list2.add(3);
List<Integer> list3 = new ArrayList<Integer>();
for(Integer i : list1){
if(!list2.contains(i)){
list3.add(i);
}
}
System.out.println(list3);
}
------解决方案--------------------
探讨

Java code
import java.util.ArrayList;
import java.util.List;

class Main {

public static void main(String args[]) {
List<Integer> list1 = new ArrayList<>();
List<Integer> list2 ……