java使用Guava的SetMultimap方法

本文介绍如何使用Guava库中的SetMultimap,通过示例代码展示了SetMultimap的基本操作,包括创建、写入键值对及输出,强调了同一键下值的唯一性。
一、首先,给出使用SetMultimap的一个小例子:
import com.google.common.collect.HashMultimap;
import com.google.common.collect.SetMultimap;

/**
 * @Description: test using SetMultimap
 * @Author: 诗人的情人
 * @Date: 12:21 下午 2019/10/16
 */
public class SetMultiMapTest {
    public static void main(String[] args) {
        SetMultimap<String, Integer> setMultimap = HashMultimap.create();
        setMultimap.put("test", 1);
        setMultimap.put("test", 1);
        setMultimap.put("test1", 1);
        setMultimap.put("test", 2);
        setMultimap.put("test", 3);
        System.out.println(setMultimap.get("test"));
        System.out.println(setMultimap.get("test1"));

        System.out.println("---遍历---");
		System.out.println("setMultimap size is: " + setMultimap.size());
        for (String key : setMultimap.keys()) {
            System.out.print("key is: " + key + ", value is: ");
            for (Integer value : setMultimap.get(key)) {
                System.out.print(value + " ");
            }
            System.out.println();
        }
    }
}

输出为:

[1, 2, 3]
[1]
---遍历---
setMultimap size is: 4
key is: test, value is: 1 2 3 
key is: test, value is: 1 2 3 
key is: test, value is: 1 2 3 
key is: test1, value is: 1 

Process finished with exit code 0
二、分析
1、导入库
import com.google.common.collect.HashMultimap;
import com.google.common.collect.SetMultimap;

这个需要在pom.xml中添加:

<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>20.0</version>
</dependency>
2、创建一个SetMultimap
SetMultimap<String, Integer> setMultimap = HashMultimap.create();
3、写入

写入key - value 键值对,key为test时,value分别为:1 1 2 3;
key为test1时,value为:1

4、输出

输出key为test和key为test1时对应的value

System.out.println(setMultimap.get("test"));
System.out.println(setMultimap.get("test1"));

对应结果:

[1, 2, 3]
[1]

可以看出,同一个key 对应的value是不能重复的。
不同的key,可以使用相同的value。

三、

只记录一下使用方法,时间有限,先不具体分析了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值