我正在尝试在 <K, List<V>>
中创建字典格式。
private static Map<String, Collection<String>> dict = new HashMap<String, Collection<String>>();
使用new HashMap<>();
或new HashMap<String, ArrayList<String>>();
抛出不兼容的数据类型错误
我需要一本类似于下面的字典。
a: apple, ajar, axe, azure
b: ball, bat, box
d: dam, door, dish, drown, deer, dare
u: urn, umbrella
y: yolk
为此,我编写了以下代码。 put() 返回不兼容的参数编译错误。在本例中使用 put() 的正确方法是什么?
dict.put("a", "apple");
dict.put("a", "ajar");
.
.
.
dict.put("u", "umbrella");
dict.put("y", "yolk");
最佳答案
您需要放置一个列表作为 map 的值,例如:
List<String> listA = Arrays.asList("apple", "ajar", "axe", "azure");
dict.put("a", listA);
或者,您可以使用 guava Multimap它允许将多个值映射到给定的键。
关于java - 使用 put() 方法创建 Map,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17836884/