在JAVA中,如何成功定义和初始化以下数据?
Array<String, String[]> BB =
{"name1", {"a", "b", "c"},
"name2", {"d", "e"}}
上述语句给出了语法错误。谢谢你的建议!
答案 0 :(得分:1)
您需要定义一个其中包含String
和String[]
字段的类,如下所示:
class MyClass {
String field1;
String[] field2;
public MyClass(String field1,String[] field2) {
this.field1 = field1;
this.field2 = field2;
}
}
然后声明清单:
List<MyClass> list = new ArrayList<>(Arrays.asList(
new MyClass("name1", new String[] { "a", "b", "c" }),
new MyClass("name2", new String[] { "d", "e" })
));
如果您的第一个Map<String, List<String>>
用作索引,则另一个选项可能是String
:
Map<String, List<String>> map = new HashMap<>();
map.put("name1", new ArrayList<String>(Arrays.asList("a", "b", "c"));
map.put("name2", new ArrayList<String>(Arrays.asList("d", "e"));
第三个选项可能是使用基本上是Map<K, Collection<V>>
的多图。 Guava提供了一个MultiMap
接口,可以使用几种方法来初始化它。