Java ArrayList 和 HashMap on-the-fly

2022-08-31 16:15:10

有人可以提供一个创建Java和动态的示例吗?因此,与其做一个 or,不如在类实例化时为数组/哈希提供种子数据?ArrayListHashMapadd()put()

举个例子,类似于PHP的东西, 例如:

$array = array (3, 1, 2);
$assoc_array = array( 'key' => 'value' );

答案 1
List<String> list = new ArrayList<String>() {
 {
    add("value1");
    add("value2");
 }
};

Map<String,String> map = new HashMap<String,String>() {
 {
    put("key1", "value1");
    put("key2", "value2");
 }
};

答案 2

一个很好的方法是使用和(从Java 8开始):List.of()Map.of()

List<String> list = List.of("A", "B", "C");
    
Map<Integer, String> map = Map.of(1, "A",
                                  2, "B",
                                  3, "C");

Java 7 及更早版本可能使用 Google Collections

List<String> list = ImmutableList.of("A", "B", "C");

Map<Integer, String> map = ImmutableMap.of(
  1, "A",
  2, "B",
  3, "C");