TreeMap을 값 기준으로 정렬하는 방법은?

조회 2,800 · 댓글 1
mminjoo작성자2016년 6월 3일
Map 타입 중 정렬(sort)을 위해 TreeMap을 종종 사용하곤 하는데요.. 혹시 키가 아닌 값 기준으로 정렬할 수 있는 방법이 있을까요?? 구글링을 해봐도 자체적인 메소드는 없는것 같은데 그런 역할을 하는 메소드를 따로 만들어서 사용하는 방법말고는 없는지 궁금합니다.
주말만기다려주말만기다려2016년 9월 9일
http://stackoverflow.com/questions/2864840/treemap-sort-by-value

static <K,V extends Comparable<? super V>>

SortedSet<Map.Entry<K,V>> entriesSortedByValues(Map<K,V> map) {
SortedSet<Map.Entry<K,V>> sortedEntries = new TreeSet<Map.Entry<K,V>>(
new Comparator<Map.Entry<K,V>>() {
@Override public int compare(Map.Entry<K,V> e1, Map.Entry<K,V> e2) {
int res = e1.getValue().compareTo(e2.getValue());
return res != 0 ? res : 1;
}
}
);
sortedEntries.addAll(map.entrySet());
return sortedEntries;
}

로그인 후 답글을 남길 수 있습니다.