前言:Multimap是guava中推出的一个新Map类型,与jdk Map接口不同的是,它的value是一个Collection
1.ArrayListMultimap继承体系
2. Multimap接口功能的逐层增加
- Multimap
Multimap接口为顶层接口,其内部方法大多与jdk map相似,不同点在于
Collection<V> get(@Nullable K key); //返回的是Collection
Map<K, Collection<V>> asMap();
- ListMultimap
ListMultimap接口继承了Multimap接口,其中将get等方法返回的Collection 覆写为 List
@Override
List<V> get(@Nullable K key);
@Override
Map<K, Collection<V>> asMap();
- AbstractMultimap
AbstractMultimap实现了Multimap接口,其中扩展了asMap方法,新增了createAsMap()抽象方法
@Override
public Map<K, Collection<V>> asMap() {
Map<K, Collection<V>> result = asMap;
return