Map<String, String> map1 = new HashMap<>();
map1.put("k1", "v1");
map1.put("k2", "v2");
map1.put("k3", "v3");
Map<String, String> map2 = new HashMap<>();
map2.put("v1", "val1");
map2.put("v2", "val2");
map2.put("v3", "vav3");
我想更新MAP1使之具有條目的值的基礎上:更新價值觀地圖等地圖中的Java
- 「K1」, 「VAL1」
- 「K2」, 「值2」,
- 「K3」, 「VAL3」
我的解決辦法:
for (Map.Entry<String, String> entry : map1.entrySet()) {
map1.put(entry.getKey(), map2.get(entry.getValue()));
}
有沒有更好的方法來做到這一點?
編輯:我使用的Java 7,但想知道是否有在Java中8
不是真的,沒有 - 雖然看起來你應該做'map3.put'而不是'map1.put'? –
is this java 8?在這種情況下,流可以幫助你。 – njzk2
另外,當填充'map2'時,你應該做'map2.put'而不是'map1.put'。 – Atri