List<Aclass>
A1과 List<Bclass>
b1과 같은 두 개의 클래스 목록이 있으며 두 목록에는 공통된 필드가 하나 있습니다. 그래서이 필드를 사용하여 두 목록을 비교해야합니까? 누구든지 나를 도울 수 있습니까? 해당 클래스 목록이 다른지 확인하십시오.자바에서 두 개의 다른 목록 객체를 비교하는 방법은 무엇입니까?
답변
지갑 the javadoc for List.equals()는 :
두 개의리스트가 같은 순서로 같은 요소를 포함하는 경우와 동일하게 정의된다.
여기에서는 equals 메서드를 사용할 수 있으며 물론 두 개의 목록을 선언 한 제네릭 형식은 무시합니다. AbstractList
의 equals 메소드 (ArrayList와 다른리스트 클래스의 묶음이 구현)는 두리스트를 반복하고 각 요소에 대해 equals를 순서대로 호출합니다. 한 번 완료되면 어느 한리스트에 항목이 남아 있지 않은지 확인합니다.
이 모든, 당신은 날씨 두 목록이 같은 요소를 포함하고 결정하기 위해 equals 메소드를 호출 할 수 있습니다 감안할 때 : 나는 완전히 질문을 이해 확실하지 않다
List<Aclass> A1 = new ArrayList<Aclass>();
List<Bclass> b1 = new ArrayList<Bclass>();
// getElement returns a private field that can be cast to both Aclass and Bclass
A1.add(getElement());
b1.add(getElement());
if (A1.equals(b1)) {
System.out.println("two lists are equal");
}
"huGe"를 원하셨습니까? –
@ Yasir yea 나는 그 순간에 무슨 일이 일어나고 있는지 모르겠다. 내 키보드가 공평하지 않다. – krock
일부 터치 타이핑을 배우고 많은 오타를 저장합니다 ;-) –
을하지만 당신은 요구하고 이런 식으로?
public boolean compare (List<AClass> listA, List<BClass> listB) {
if (listA.size() != listB.size() return false;
for (int i=0; i<listA.size(); i++) {
AClass aClass == (AClass) listA.get(i);
BClass bClass == (BClass) listB.get(i);
if (aClass.commonField != bClass.commonField) return false;
}
return true;
}
두 목록
는감사합니다. Aleadam 나는 해결책에 아주 가깝다고 생각합니다 !!! 당신은 내 문제가 정확하게 발생했습니다 – vinod
@vinod : 해결책이라고 생각되면 게시물 옆에있는 체크 표시를 클릭하여 해결 방법을 표시하십시오. –
나는 몇 가지 오타를 편집했습니다. 그러한 짧고 간단한 방법은 목록이 정렬 된 경우에만 작동한다는 것을 기억하십시오. 클래스 필드가 공개되면 null이 아닌지 확인해야합니다. 더 나은 옵션은 AClass와 BClass에 public 메소드 인 compareField()를 만드는 것이다. – Aleadam
- 1. 경고없이 두 개의 정수를 비교하는 방법은 무엇입니까?
- 2. 두 개의 검색어를 비교하는 방법은 무엇입니까?
- 3. C에서 두 개의 구조체를 비교하는 방법은 무엇입니까?
- 4. 두 개의 트리를 비교하는 방법은
- 5. 두 개의 .mp4 파일을 비교하는 방법은 무엇입니까?
- 6. 두 개의 java.util.Properties 객체를 병합하는 방법은 무엇입니까?
- 7. 두 개의 서로 다른 ActiveResource 모델이 두 개의 다른 연결 객체를 사용하도록 만드는 방법은 무엇입니까?
- 8. 자바에서 시간을 비교하는 방법
- 9. 두 개의 바코드를 비교하는 방법
- 10. 두 개의 유사한 g ++ -S 어셈블리 출력을 비교하는 방법은 무엇입니까?
- 11. 엡실론 값과의 차이점을 비교하는 대신 2 개의 보수를 사용하여 두 개의 두 점을 비교하는 이유는 무엇입니까?
- 12. 아이폰 SDK와 두 개의 이미지를 비교하는 방법은 무엇입니까?
- 13. 두 데이터베이스를 비교하는 방법은 무엇입니까?
- 14. 비슷한 속성을 지닌 두 개의 서로 다른 개체를 비교하는 방법
- 15. 개체의 속성을 기반으로 두 개의 NSSets를 비교하는 방법은 무엇입니까?
- 16. oracle diff : 두 테이블을 비교하는 방법은 무엇입니까?
- 17. TourtoiseSVN : 2 개의 태그를 비교하는 방법은 무엇입니까?
- 18. CUDA 두 개의 2D 배열을 비교하는 방법은 무엇입니까?
- 19. 한 필드에 두 개의 유효성 검사기를 비교하는 방법은 무엇입니까?
- 20. 두 테이블을 프로그래밍 방식으로 비교하는 방법은 무엇입니까?
- 21. 두 개의 다른 자식 리모컨에있는 파일을 비교하는 방법
- 22. LinkedList.Contains. 객체를 비교하는 데 사용되는 방법은 무엇입니까?
- 23. 자바에서 두 개의 WAV 파일을 결합 하시겠습니까?
- 24. 자바에서 두 객체를 비교하고 두 객체 간의 차이점 인 속성의 Map 또는 XML, Json을 비교하는 방법은 무엇입니까?
- 25. 두 개의 다른 데이터베이스에서 동일한 테이블을 비교하는 Python 스크립트
- 26. perl에서 두 개의 다단계 해시를 비교하는 방법
- 27. 쉘 스크립트에서 두 파일을 비교하는 방법은 무엇입니까?
- 28. 두 웨이브 데이터를 비교하는 방법은 무엇입니까?
- 29. 두 배열의 내용을 비교하는 방법은 무엇입니까?
- 30. 두 개의 목록 페어링
당신은 하나 개의 필드가 다른 무엇을 의미합니까 그 commonField 필드에 의해 분류되어야 하는가? 'name'과 같은 속성이 다른'Person'과 같은 객체의 목록입니까? 질문 할 때 더 명확하게 노력하십시오. – adarshr
그리고 '비교'란 무엇입니까? 목록 등을 정렬하고 싶습니까? – adarshr
그리고 게시물에 서명을 사용하지 마십시오. 이미 게시물 아래에 있습니다. 감사. –