質問:
Java HashMap を初期化することは可能ですか?このような簡潔な方法で?
Map<String,String> test = new HashMap<String, String>{"test":"test","test":"test"};
そうであれば、正しい構文は何ですか?
Java バージョン 9 以降の答え:
はい、これは Java 9 で追加されたファクトリ メソッドを使用して可能になりました:
// For up to 10 elements Map<String, String> test1 = Map.of("a", "b", "c", "d"); // For any number of elements import static java.util.Map.entry; Map<String, String> test2 = Map.ofEntries(entry("a", "b"), entry("c", "d"));
Java バージョンまでの答え8:
残念ながら、提供された構文で直接初期化することはできません。ただし、匿名サブクラスを使用してコードを短縮できます:
Map<String, String> myMap = new HashMap<String, String>() {{ put("a", "b"); put("c", "d"); }};
または、初期化用の関数を作成できます:
Map<String, String> myMap = createMap(); private static Map<String, String> createMap() { Map<String,String> myMap = new HashMap<String,String>(); myMap.put("a", "b"); myMap.put("c", "d"); return myMap; }
以上がJava HashMap を直接初期化するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。