Java中使用Guava库创建Set集合的示例

import java.util.Set;
import com.google.common.collect.Sets;

private Set<K> names = Sets.newHashSet();
这段代码是Java语言编写的,使用了Google的Guava库中的`Sets`类来创建一个`Set`集合。下面是对这段代码的详细解释:

1. `import java.util.Set;`:这一行代码导入了Java标准库中的`Set`接口。`Set`是一个不包含重复元素的集合,并且它不能包含`null`值。

2. `import com.google.common.collect.Sets;`:这一行代码导入了Guava库中的`Sets`类。Guava是Google提供的一个Java核心库,它提供了一系列有用的工具类和辅助方法,`Sets`类就是其中之一,它提供了一些静态方法来创建和操作`Set`集合。

3. `private Set<K> names = Sets.newHashSet();`:这一行代码声明了一个类型为`K`的`Set`集合,名为`names`。`K`是一个类型参数,表示集合中元素的类型。`Sets.newHashSet()`是Guava库中的一个静态方法,它创建并返回一个新的`HashSet`实例。`HashSet`是Java标准库中的一个`Set`实现,它基于哈希表实现,可以存储不重复的元素,并且查找元素的速度很快。

举例说明:

假设我们有一个`Person`类,它有一个`name`属性,我们想要存储一组`Person`对象的`name`,并且确保每个`name`都是唯一的。我们可以使用上述代码片段来实现这一点。

首先,定义`Person`类:
public class Person {
    private String name;

    public Person(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }
}
然后,使用上述代码片段来创建一个`Set`集合,并添加一些`Person`对象的`name`:
import java.util.Set;
import com.google.common.collect.Sets;

public class Main {
    private Set<String> names = Sets.newHashSet();

    public static void main(String[] args) {
        Main main = new Main();
        main.names.add(new Person("Alice").getName());
        main.names.add(new Person("Bob").getName());
        main.names.add(new Person("Charlie").getName());
        main.names.add(new Person("Alice").getName()); // 这个会被忽略,因为"Alice"已经存在

        System.out.println(main.names); // 输出: [Alice, Bob, Charlie]
    }
}
在这个例子中,我们尝试添加了四个`Person`对象的`name`到`names`集合中。由于`Set`集合的特性,即使我们尝试添加两个相同的`name`(在这个例子中是"Alice"),集合中也只会保留一个"Alice"。因此,最终输出的集合中只包含三个不重复的`name`。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值