Java Mapの中にMapを定義するサンプル

環境
JavaSE11
Eclipse 4.26.0

構文
Map<String, Map<String, String>> 変数名1 = new HashMap<>();
マップの中にマップを定義します。
Map<String, String> 変数名2 = new HashMap<>();
変数名2.put(キー,値)
変数名1.put(キー,変数名2)

マップの中にマップの値を取得します。
map変数1.get(map変数1のキー).get(map変数2のキー)

使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
package com.arkgame.study;
import java.util.HashMap;
import java.util.Map;
public class ArktestDemo {
public static void main(String[] args) {
Map<String, Map<String, String>> mapA = new HashMap<>();//マップの中にマップ
Map<String, String> mapB = new HashMap<>();
mapB.put("tokyo", "東京");
mapB.put("oosaka", "大阪");
mapB.put("fukuoka", "福岡");
mapA.put("city", mapB); // マップにマップを追加
System.out.println(mapA.get("city"));//{tokyo=東京, fukuoka=福岡, oosaka=大阪}
System.out.println(mapA.get("city").get("tokyo"));//東京 (getを2つ指定して取得)
System.out.println(mapA.get("city").get("oosaka"));//大阪
System.out.println(mapA.get("city").get("fukuoka"));//福岡
}
}
package com.arkgame.study; import java.util.HashMap; import java.util.Map; public class ArktestDemo { public static void main(String[] args) { Map<String, Map<String, String>> mapA = new HashMap<>();//マップの中にマップ Map<String, String> mapB = new HashMap<>(); mapB.put("tokyo", "東京"); mapB.put("oosaka", "大阪"); mapB.put("fukuoka", "福岡"); mapA.put("city", mapB); // マップにマップを追加 System.out.println(mapA.get("city"));//{tokyo=東京, fukuoka=福岡, oosaka=大阪} System.out.println(mapA.get("city").get("tokyo"));//東京 (getを2つ指定して取得) System.out.println(mapA.get("city").get("oosaka"));//大阪 System.out.println(mapA.get("city").get("fukuoka"));//福岡 } }
package com.arkgame.study;

import java.util.HashMap;
import java.util.Map;

public class ArktestDemo {

      public static void main(String[] args) {
            Map<String, Map<String, String>> mapA = new HashMap<>();//マップの中にマップ

            Map<String, String> mapB = new HashMap<>();
            mapB.put("tokyo", "東京");
            mapB.put("oosaka", "大阪");
            mapB.put("fukuoka", "福岡");

            mapA.put("city", mapB); // マップにマップを追加

            System.out.println(mapA.get("city"));//{tokyo=東京, fukuoka=福岡, oosaka=大阪}
            System.out.println(mapA.get("city").get("tokyo"));//東京 (getを2つ指定して取得)
            System.out.println(mapA.get("city").get("oosaka"));//大阪
            System.out.println(mapA.get("city").get("fukuoka"));//福岡

      }

}

実行結果
{tokyo=東京, fukuoka=福岡, oosaka=大阪}
東京
大阪
福岡

Java

Posted by arkgame