我有一個(gè)Map<String, String>對(duì)象。我想讓它按鍵排序,但鍵應(yīng)該被視為整數(shù)。我剛剛創(chuàng)建了一個(gè)TreeMap<Integer, String>(myMapObject).但這顯然行不通。如何創(chuàng)建新的 TreeMap 并將鍵從 String 更改為 Integer?
1 回答

撒科打諢
TA貢獻(xiàn)1934條經(jīng)驗(yàn) 獲得超2個(gè)贊
您可以Collectors.toMap在 Java 8 中使用:
Map<Integer, String> map1 = map.entrySet().stream().collect(Collectors.toMap(entry -> Integer.parseInt(entry.getKey()), Map.Entry::getValue, (a, b) -> b));
或低于傳統(tǒng)方法:
Map<Integer, String> map1 = new HashMap<>();
for(final Map.Entry<String, String> entry : map.entrySet()){
map1.put(Integer.parseInt(entry.getKey()), entry.getValue());
}
添加回答
舉報(bào)
0/150
提交
取消