Multimap介绍+遍历使用+方法及说明

版权声明:本文为博主原创文章原创不易,转载请注明原创地址。 https://blog.csdn.net/Summer_Lyf/article/details/86017752

先介绍:Multimap 顾名思义通过名字可想,Multi就是很多的意思,允许我们一个关键字对应多个value,所有说Multimap允许重复的键值插入容器。(一般使用map,只能保证一个key对应一个value)

一:如果在开发中遇到List存在嵌套的情况,通常的实现方式是使用两个for循环嵌套,这样使得执行步骤增加,大大降低了系统的性能。这个时候强烈推荐使用Multimap数据结构!

二:遍历:可以使用遍历器进行遍历,也可以获取其Key值进行遍历

// 使用遍历器遍历:
Iterator iter = map.entries().iterator();
while(iter.hasNext())
{
      Map.Entry<Integer, Integer> entry = (Map.Entry<Integer, Integer>)iter.next();
      System.out.println(String.format("%d:%d", entry.getKey(),entry.getValue()));
}
结果:
1:2
1:3
2:4
2:6
21:6
6:7
11:2
12:3
//使用Key值遍历,key值可以得到一个全部键值的MultiSet或者是一个没有重复键值的KeySet,这边使用没有重复键值的做例子
Set<Integer> keys = map.keySet();
for(int key:keys)
{
    String result = String.format("%d:", key);
    Set<Integer> values = map.get(key);
    for(int value:values)
    {
    	   result= result+" "+value;
    }
    System.out.println(result);
}
结果:
1: 2 3
2: 4 6
21: 6
6: 7
11: 2
12: 3

三:方法及说明:

更多用法参见Class Multimaps

猜你喜欢

转载自blog.csdn.net/Summer_Lyf/article/details/86017752
今日推荐