Guava系列:Multimap使用方法
阿新 • • 發佈:2021-02-17
技術標籤:Guava
場景
Multimap一個key可以對應多個value
key對應list
demo
package com.nio4444.demo; import com.google.common.collect.ArrayListMultimap; import com.google.common.collect.Multimap; import java.util.Collection; import java.util.List; import java.util.Map; import java.util.Set; public class MultimapDemo { public static void main(String[] args) { Multimap<String,String> multimap = getMultimap(); List<String> lowerList = (List<String>)multimap.get("lower"); System.out.println("==" + lowerList ); Map<String, Collection<String>> map = multimap.asMap(); System.out.println("==map"); for (Map.Entry<String, Collection<String>> entry : map.entrySet()) { String key = entry.getKey(); Collection<String> value = entry.getValue(); System.out.println(key + ":" + value); } System.out.println("==Keys:"); Set<String> keys = multimap.keySet(); for(String key:keys){ System.out.println(key); } System.out.println("==Values:"); Collection<String> values = multimap.values(); System.out.println(values); } private static Multimap<String,String> getMultimap(){ Multimap<String,String> multimap = ArrayListMultimap.create(); multimap.put("lower", "a"); multimap.put("lower", "b"); multimap.put("lower", "c"); multimap.put("lower", "d"); multimap.put("lower", "e"); multimap.put("upper", "A"); multimap.put("upper", "B"); multimap.put("upper", "C"); multimap.put("upper", "D"); return multimap; } }