请告知我想在java中创建一个地图,如下所示,因为你可以看到密钥在那里但是map的值是列表类型的更多,payername key可以有pn,pnb,gft的值列表,您这样请告知我们如何在java中创建这样的Map
key values
payerName pn , pnb , gft , thy
fixedRate re , et, try ,htre
请告知如何在java中实现此目的
答案 0 :(得分:4)
一个选项是Map<String, List<String>>
:
Map<String, List<String>> map = new HashMap<>();
map.put ("payerName", Arrays.asList("pn", "pnb", "gft", "thy"));
map.put ("fixedRate", Arrays.asList("re", "et", "try", "htre"));
答案 1 :(得分:1)
ListMultimap也很不错。它的作用类似于Map<K, List<V>>
,但没有每次添加密钥时必须初始化空列表的开销。也就是说,而不是写作:
if (!map.hasKey(key)) {
map.put(new ArrayList<V>());
}
map.get(key).add(value);
你写了
map.put(key, value);