가장 일반적인 Java 콜렉션의 다양한 메소드, 조작 및 전제 조건을 탐구 중이며 조금 혼란 스럽습니다. 누군가가 다음 항목을 명확히 수 있다면 나는 매우 감사하게 될 것입니다 :TreeMap/TreeSet의 요구 사항
1) 방법 equals
과의 구현인가를 hashCode
절대적으로 TreeSet
하고 HashMap
에 같은 TreeMap
가 제대로 작동하기 위해서는 필요? 이전 방법을 구현하지 않은 경우 잠재적으로 어떤 영향이 있습니까? 나는 현재 TreeMap과 TreeSet (사용자 정의 클래스 객체)을 사용하고 있으며, 지금까지는 Comparable
및 그 메소드 compareTo
을 구현하여 equals
및 hashCode
을 구현함으로써 지금까지 제대로 작동합니다.
2) 클래스 equals
, hashCode
또는 인터페이스에 Comparable
impelmenting 때 모든 유도 된 클래스를 정의하고 새로운 implementantion없이 이러한 방법에있어서, 수집 제대로 작동하는 것은 충분? 주어진 메소드가 파생 클래스에 속해 있기 때문에 나는 전자가 옳다는 인상을 가지고있다. 마침내 사실입니까?
설정이 맵과 다르므로이 질문을 두 개의 질문으로 나누면 좋을 것 같습니다. – kosa