値にHashMapをソートするためには、パブリックメソッドを書きます
着信のHashMap <カスタム、カスタム>は、次のコードは、HashMapの地図<文字列、文字列>としてインスタンス化されるにします
/ * *对地図<文字列、文字列>中的値进行排序(正序) * / パブリックマップ<文字列、文字列> sortMapByValue(地図<文字列、文字列> unSortMap){ 場合(unSortMap == NULL || unSortMap.isEmpty ()){ 戻り ヌル。 } リスト <のMap.Entry <文字列、文字列>> listEntry = 新規のArrayList <> (); listEntry.addAll(unSortMap.entrySet())。 Collections.sort(listEntry、新しいコンパレータ<のMap.Entry <文字列、文字列>> (){ @Override 公共 のint(のMap.EntryのMap.Entry <文字列、文字列>の<文字列、文字列> O1の比較{O2) // メソッド文字列のcompareTo辞書O1、O2、図中の前、負返します。 戻る o1.getValue()のcompareTo(o2.getValue());. // ここに。getKeyへのgetValueの地図キーに従ってソート } }); 地図 <文字列、文字列> =のSortedMap 新しい新規のLinkedHashMap <> (); のため(のMap.Entry <文字列、文字列>のエントリ:ListEntry){ sortedMap.put( entry.getKey()、entry.getValue()); } 戻りのSortedMapを; }
HashMapのソートの鍵となるのは、単にコメントのgetValueのgetKeyを変更するように変更することができます押してください。