자바에서 키값으로 Map을 정렬할수있나요?


<"question1", "1">, <"question9", "1">, <"question2", "4">, <"question5", "2"> 이런 데이터를 가지는 Map을 만들었는데요.

저 키 값으로 question1, question2, question3 이런 식으로 정렬 하고싶어요. 결론적으로 question1과 거기의 키값을 얻고싶은데.

Iterator it = paramMap.entrySet().iterator();
while (it.hasNext()) {
Map.Entry pairs = (Map.Entry)it.next();
 questionAnswers += pairs.getKey()+",";
}

제가 이런식으로 해봤는데 정렬이 안되네요. 어떻게하면 될까요?

  • 2016년 01월 26일에 작성됨

조회수 281


1 답변


좋아요
0
싫어요
채택취소하기
SortedSet<String> keys = new TreeSet<String>(map.keySet());
for (String key : keys) { 
   String value = map.get(key);
   // do something
}

TreeMap을 써보세요. TreeMap은 Map을 키값에 맞춰 트리구조로 정렬한 자료구조입니다.

  • 2016년 01월 26일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close