Java が新しい書き込みメソッドを発見する前、私は常に List と Map を次のように初期化していました。
次のようにコードをコピーします。
//リストを初期化する
List<string> list = new ArrayList</string><string>();
list.add("www.VeVB.COm");
list.add("string2");
//その他の list.add() コード....
list.add("stringN");
//マップを初期化する
Map</string><string, String> map = new HashMap</string><string, String>();
map.put("キー1", "値1");
map.put("キー2", "値2");
//.... 他の Map.put() コード
map.put("キーN", "値N");
</string>
なんて面倒なことでしょう。 。 。 。 。ある日、こんな方法を見つけました。
次のようにコードをコピーします。
//リストを初期化する
List<string> list = new ArrayList</string><string>(){{
add("文字列1");
add("文字列2");
//その他の add() コード....
add("文字列N");
}};
//マップを初期化する
Map</string><string , String> map = new HashMap</string><string , String>(){{
put("キー1", "値1");
put("key2", "VeVB.COm");
//.... 他の put() コード
put("キーN", "値N");
}};
</string>
書くコードはそれほど減っていないようですが、個人的にはこちらの方がシンプルでスムーズな気がします(笑)
たとえば、Yiju エディターは、より単純な List の 2 つの例をテストしました。
方法 1:
Array と ArrayList 間の相互変換メソッドを使用したコードは次のようになります。
次のようにコードをコピーします。
rrayList<String> list = new ArrayList(Arrays.asList("ライアン", "ジュリー", "ボブ"));
方法 2:
ArrayList の add メソッドを使用して初期化割り当てを完了します。コードは次のとおりです。
次のようにコードをコピーします。
リスト list = new ArrayList<String>(){{
add("A");
add("B");
}}