以下のプログラムがあったとします、


Map<Integer, String> map = new HashMap<Integer, String>();

map.put( 0 , "abc" );
map.put( 4 , "efg" );
map.put( 1 , "hij" );
map.put( 3 , "klm" );
map.put( 2 , "npo" );

これで、mapのキーをソートするにはどうしたらいいでしょうか?

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2013/09/10 18:01:05
  • 終了:2013/09/17 18:05:04

回答(1件)

id:a-kuma3 No.1

a-kuma3回答回数4487ベストアンサー獲得回数18562013/09/10 18:33:26

ひとつのやり方は、キーを List に突っ込んで、ソートする。

    Map<Integer, String> map = new HashMap<Integer, String>();
        ...
    List<Integer> keyList = new ArrayList<Integer>(map.keySet());
    Collections.sort(keyList);

もうひとつのやり方は、キーがソートされる TreeMap を使う。

    Map<Integer, String> map = new TreeMap<Integer, String>();
        ...
    List<Integer> keyList = new ArrayList<Integer>(map.keySet());
他1件のコメントを見る
id:taknt

自分でクイックソートさせればいい。

2013/09/10 19:01:51
id:zachouR

解答ありがとうございました。TreeMapを使用して見ることにしましたm(__)m

2013/09/11 10:02:46

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません