0
두 arraylists의 첫 번째 요소가 same.i 인 경우에도 결과가 true가 아닙니다. 결과가 일치하면 내 체크 박스를 확인하고 싶습니다. 내 recyclerview에서 구현했습니다. arraylists의 요소를 비교하고 싶지만 두 가지 모두 크기가 다릅니다. 저는 솔루션을 온라인에서 찾은 다음이를 구현했습니다.크기가 다른 두 arraylist의 요소를 android에서 비교하십시오.
List<String> list1 = new ArrayList<>();
for (int i = 0; i < data.size(); i++) {
list1.add(data.get(i).getChannel_names());
}
List<String> list2 = new ArrayList<>();
for (int i = 0; i < listNewsChannelsSelected.size(); i++) {
list2.add(listNewsChannelsSelected.get(i).getSelectedChannelsFromApi());
}
private boolean equalLists(List<String> one, List<String> two) {
if (one == null && two == null) {
return false;
}
if (one != null && two == null) {
return false;
}
one = new ArrayList<>(one);
two = new ArrayList<>(two);
Collections.sort(one);
Collections.sort(two);
return one.equals(two);
}
if (equalLists(list1,list2)) {
holder.mCheckBox.setChecked(true);
} else {
holder.mCheckBox.setChecked(false);
}
은 Comparer와 Comparator를 모두 구현했습니다. 그렇다면 세부 정보 게시 pls. 그렇지 않다면 구현할 필요가 없습니다. –
@NirajSanghani가 없습니다. 하지만 equlaLists 메소드가 이미 비교할 때 비교자를 비교하는 이유는 무엇입니까? –
나는 그때 질문에 대한 질문이 분명하지 않다. –