我正在尝试编写一个方法,该方法采用 2 个双精度数组列表并返回 set1 中未在 set2 中找到的所有值。这些数字应在 set3 中返回。我不断收到内存不足错误。谁能指出我正确的方向?
ArrayList<Double> setDiff(ArrayList<Double> set1, ArrayList<Double> set2){
ArrayList<Double> set3 = new ArrayList<Double>();
int count = 0;
while(count < set1.size()){
boolean inList = false;
while(inList == false){
int count2 = 0;
while(count2 < set2.size() && set1.get(count) == set2.get(count2)){
count2++;
}
if(count2 != set2.size()){
set3.add(set1.get(count));
}
else{
inList = true;
count++;
}
}
}
return set3;
}