-2
私は次のキーを指定された順序で並べ替えたいと思っています。 0121、D21、D31、D101、D201、D301、D401、Q11、Q40、Q102、Q401。TreeMapの次の英数字キーのソート方法は?
助けてください。
私は次のキーを指定された順序で並べ替えたいと思っています。 0121、D21、D31、D101、D201、D301、D401、Q11、Q40、Q102、Q401。TreeMapの次の英数字キーのソート方法は?
助けてください。
TreeMap
にはComparator
を実装し、コンストラクタに渡します。
public void sortedMap(TreeMap srt) \t {Set > en = srt.entrySet(); \t \tリスト> list =新しいArrayList >(en); \t \t Collections.sort(リスト、新しいコンパレータ<のMap.Entry <文字列、ステータス>>(){ \t \t \tのString [] OB1、OB2 = NULL; \t \t \t整数I1、I2、 \t \t \t public int compare(Entry o1、Entry o2){ \t \t \t \t ob1 = o1.getKey()。split( "(?<= \\ D)(?= \\ D) d) "); \t \t \t \t ob2 = o2.getKey()。split("(?<= \\ D)(?= \\ d) "); \t \t \t \t i1 = Integer.parseInt(ob1 [1]); \t \t \t \t i2 = Integer.parseInt(ob2 [1]); \t \t \t \t return o1.compareTo(o2); \t \t \t \t} \t \t}); \t} –
user3169322
私は上記の機能を書いていますが、それでも私のケースでは機能しません – user3169322
これを質問に入れて、理解できるようにフォーマットしてください。あなたがそれをしている間に、「まだ動作していません」ということを、好ましくはエラーメッセージか、または予想された出力と実際の出力との間の比較を用いて精緻化してください。 –