小编典典
我有上述问题的解决方案
public boolean compareLists(List prevList, List modelList) {
if (prevList.size() == modelList.size()) {
for (MyData modelListdata : modelList) {
for (MyData prevListdata : prevList) {
if (prevListdata.getName().equals(modelListdata.getName())
&& prevListdata.isCheck() != modelListdata.isCheck()) {
return true;
}
}
}
}
else{
return true;
}
return false;
}
编辑:-
我们该如何覆盖…想象一下,如果您有两个数组“ A”,真“ B”,真“ C”,真和“ A”,真“ B”,真“
D”,真。即使数组一具有C且数组二具有D,也没有任何检查可以捕获到该错误( 由@Patashu提及 )。.SO为此我做了以下更改。
public boolean compareLists(List prevList, List modelList) {
if (prevList!= null && modelList!=null && prevList.size() == modelList.size()) {
boolean indicator = false;
for (MyData modelListdata : modelList) {
for (MyData prevListdata : prevList) {
if (prevListdata.getName().equals(modelListdata.getName())
&& prevListdata.isCheck() != modelListdata.isCheck()) {
return true;
}
if (modelListdata.getName().equals(prevListdata.getName())) {
indicator = false;
break;
} else
indicator = true;
}
}
}
if (indicator)
return true;
}
}
else{
return true;
}
return false;
}
2020-09-28