데이터 개체가 많은 프로그램이 있습니다. 이들 각각은 Comparable을 구현하고 중복 값을 포함하여 의 가장 높은 값에서 가장 낮은 값까지 정렬하도록 설정됩니다 (단순한 long 값을 기반으로 함). 나는이 객체들을 세트 /리스트에 저장하여 그 객체를 반복 할 수있게하고 각각의 객체를 각각의 장소에서 꺼내기를 원한다.Java : 중복을 허용하는 정렬 된 목록/집합
그러나 TreeSet을 사용하여 보았습니다.하지만 중복을 허용하지 않으므로 같은 값을 가진 많은 개체 중 하나만 유지합니다. 그런 다음 동일한 값을 가진 요소를 유지할 수있는 TreeMultiset을 발견했습니다. 유일한 문제는 동일한 객체를 여러 개 저장하는 것이 아니라 동일한 객체의 복제본을 저장한다는 것입니다.
내가 원하는 것을 할 수있는 라이브러리/내장 객체가 있습니까? 아니면 직접 구현을 만들어야합니까?
참고 : 개체가 사용자에게 고유 ID 및 시간 값 (이 비교되는 것입니다) 당신이
가능 중복 [자바 : 분리 수거 중복을 허용, 메모리 효율적이고 빠른 삽입 + 업데이트를 제공한다 (http://stackoverflow.com/questions/12827595/ 같은 래퍼 클래스와 동일한 개체 java-sorted-collection-allow-duplicates-is-memory-efficient-and-provide) – bumbumpaw
좋아, 그래서 내 자신의 질문을 해결하는 방법을 알아 냈어. 제공된 중복 서를 부른다. 제 경우에는 Collections.sort()를 사용하여 간단하게 ArrayList를 사용했습니다. 주로 요소를 순서대로 유지했기 때문에 이것을 선택했습니다. ArrayList.subList()를 수행 할 수있게 해 주었기 때문에 내가 언급 한 것을 잊어 버렸습니다. – ZephireNZ
니스! 잘 됐네요. – bumbumpaw