import java.util.HashMap;
import java.util.Map;
public class Main {
public static void main(String[] args) {
// 与ãˆã‚‰ã‚ŒãŸï¼’ã¤ã®æ•´æ•°åž‹ã®ã‚ーã¨å€¤ã‹ã‚‰ãªã‚‹ãƒžãƒƒãƒ— mapA 㨠mapB
Map<String, Integer> mapA = new HashMap<>();
mapA.put("Apple", 3);
mapA.put("Banana", 2);
mapA.put("Orange", 5);
Map<String, Integer> mapB = new HashMap<>();
mapB.put("Apple", 7);
mapB.put("Banana", 4);
mapB.put("Grapes", 6);
// æ–°ã—ã„マップを作æˆ
Map<String, Integer> mergedMap = mergeMaps(mapA, mapB);
// çµæžœã‚’表示
System.out.println("æ–°ã—ã„マップ: " + mergedMap);
}
// 与ãˆã‚‰ã‚ŒãŸï¼’ã¤ã®ãƒžãƒƒãƒ—をマージã™ã‚‹ãƒ¡ã‚½ãƒƒãƒ‰
private static Map<String, Integer> mergeMaps(Map<String, Integer> mapA, Map<String, Integer> mapB) {
// æ–°ã—ã„マップを作æˆ
Map<String, Integer> mergedMap = new HashMap<>(mapA);
// mapB ã®å„エントリã«å¯¾ã—ã¦å‡¦ç†
for (Map.Entry<String, Integer> entryB : mapB.entrySet()) {
String keyB = entryB.getKey();
int valueB = entryB.getValue();
// mapA ã«å¯¾å¿œã™ã‚‹ã‚ーãŒå˜åœ¨ã™ã‚‹å ´åˆã¯å€¤ã‚’åˆè¨ˆ
if (mergedMap.containsKey(keyB)) {
int valueA = mergedMap.get(keyB);
mergedMap.put(keyB, valueA + valueB);
} else {
// mapA ã«å¯¾å¿œã™ã‚‹ã‚ーãŒå˜åœ¨ã—ãªã„å ´åˆã¯ãã®ã¾ã¾ä¿æŒ
mergedMap.put(keyB, valueB);
}
}
return mergedMap;
}
}
ã“ã®ã‚³ãƒ¼ãƒ‰ã§ã¯ã€mergeMaps メソッドを使用ã—㦠mapA 㨠mapB をマージã—ã¦æ–°ã—ã„マップ mergedMap を作æˆã—ã¦ã„ã¾ã™ã€‚mergedMap ã«ã¯æœ€åˆã« mapA ã®ã‚¨ãƒ³ãƒˆãƒªãŒè¿½åŠ ã•れã€ãã®å¾Œ mapB ã®ã‚¨ãƒ³ãƒˆãƒªãŒå‡¦ç†ã•れã€ã‚ーãŒã™ã§ã«å˜åœ¨ã™ã‚‹å ´åˆã¯å€¤ã‚’åˆè¨ˆã—ã€å˜åœ¨ã—ãªã„å ´åˆã¯ãã®ã¾ã¾æ–°ã—ã„エントリãŒè¿½åŠ ã•れã¾ã™ã€‚
「020 コレクションフレームワークã€å•題集リスト
🎯 実習ã§ç†è§£ã‚’æ·±ã‚よã†
ã“ã®å†…容ã«ã¤ã„ã¦JavaDrillã§å®Ÿéš›ã«æ‰‹ã‚’å‹•ã‹ã—ã¦å¦ç¿’ã§ãã¾ã™


コメント