Java中的Set操作

本文详细介绍Java中Set集合的各种操作方法,包括并集、交集、差集等,并提供具体实现代码示例。此外,还讨论了如何判断一个集合是否为另一个集合的子集或超集。

首先看一个例子:

Set operations: union(并集), intersection(交集),asymetric difference(非对称差集), symmetric difference(对称差集), is subset(子集), is superset(超集)

这里很重要的是,一些集合操作会修改原始集合,比如addAll,retainAll,removeAll。尤其是你要重复操作原始集合的时候,一定要新建一个集合,new  TreeSet<T> ( orginalSet )。

 

参考:

http://www.java2s.com/Code/Java/Collections-Data-Structure/Set.htm

 

### Java Set 操作使用方法及示例 #### 创建Set实例并初始化 在Java中,`Set`接口提供了多种实现方式,最常用的有`HashSet`, `LinkedHashSet` 和 `TreeSet`。下面展示如何创建不同类型的`Set`对象: ```java // 导入必要的包 import java.util.HashSet; import java.util.LinkedHashSet; import java.util.TreeSet; public class Main { public static void main(String[] args) { // 创建 HashSet 实例 Set<String> hashSet = new HashSet<>(); // 创建 LinkedHashSet 实例保持插入顺序 Set<String> linkedHashSet = new LinkedHashSet<>(); // 创建 TreeSet 实例自动排序元素 Set<String> treeSet = new TreeSet<>(); } } ``` #### 添加元素至Set集合 利用`add()`方法向`Set`中添加新元素。此方法会检查重复项,并只会在没有相同元素的情况下执行添加操作[^4]。 ```java hashSet.add("Apple"); boolean isAdded = hashSet.add("Banana"); // 返回 true 如果成功添加 System.out.println(isAdded); // 输出: true 或 false 取决于是否已经存在 "Banana" ``` #### 移除Set中的元素 要移除某个特定元素可以从任何实现了`Set`接口的对象调用`remove(Object o)` 方法来完成。 ```java hashSet.remove("Apple"); if (!hashSet.contains("Apple")) System.out.println("'Apple' has been removed."); ``` #### 遍历Set集合 遍历`Set`可以通过增强for循环或者迭代器来进行。 ```java for (String fruit : hashSet) { System.out.println(fruit); } Iterator<String> iterator = hashSet.iterator(); while(iterator.hasNext()){ String element = iterator.next(); System.out.println(element); } ``` #### 清空Set集合 清空整个`Set`只需要调用一次`clear()`即可。 ```java hashSet.clear(); // 删除所有的条目 if(hashSet.isEmpty()) System.out.println("The set is now empty."); ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值