java中集合set的用法
时间: 2024-05-16 14:14:05 浏览: 10
在 Java 中,Set 是一种不允许重复元素的集合。常见的 Set 类型有 HashSet、TreeSet 和 LinkedHashSet。
HashSet 是基于哈希表实现的 Set,它不保证元素的顺序,但是添加、删除和查找操作的时间复杂度都是 O(1) 的。
TreeSet 是基于红黑树实现的 Set,它会根据元素的大小自动排序,添加、删除和查找操作的时间复杂度都是 O(log n) 的。
LinkedHashSet 是基于哈希表和链表实现的 Set,它保证元素的顺序和插入的顺序一致,添加、删除和查找操作的时间复杂度都是 O(1) 的。
下面是一些常见的 Set 操作:
1. 创建一个 Set 对象:
```
Set<String> set = new HashSet<>();
```
2. 添加元素:
```
set.add("apple");
set.add("banana");
set.add("orange");
```
3. 删除元素:
```
set.remove("apple");
```
4. 查找元素:
```
boolean contains = set.contains("banana");
```
5. 遍历元素:
```
for(String element : set) {
System.out.println(element);
}
```
注意:Set 不允许重复元素,如果添加重复元素会被忽略。可以通过 contains 方法判断元素是否已存在。
相关问题
java中set集合用法
在Java中,Set是一种集合类型,它不允许重复元素,并且没有固定的顺序。常见的Set实现类有HashSet、LinkedHashSet和TreeSet。下面是Set的用法示例:
1. 创建Set对象
可以使用以下语法创建Set对象:
```java
Set<T> set = new HashSet<>(); // 创建HashSet对象
Set<T> set = new LinkedHashSet<>(); // 创建LinkedHashSet对象
Set<T> set = new TreeSet<>(); // 创建TreeSet对象
```
其中,T表示元素的类型。
2. 添加元素
可以使用add()方法向Set中添加元素:
```java
set.add(element); // 将元素添加到Set中,如果Set中已经存在该元素,add()方法不会执行任何操作
```
3. 删除元素
可以使用remove()方法从Set中删除元素:
```java
set.remove(element); // 从Set中删除指定元素,如果Set中不存在该元素,remove()方法不会执行任何操作
```
4. 判断元素是否存在
可以使用contains()方法判断Set中是否存在指定元素:
```java
set.contains(element); // 如果Set中存在该元素,返回true;否则返回false
```
5. 遍历元素
可以使用foreach循环或者迭代器遍历Set中的元素:
```java
for (T element : set) {
// 对元素进行操作
}
Iterator<T> iterator = set.iterator();
while (iterator.hasNext()) {
T element = iterator.next();
// 对元素进行操作
}
```
6. 获取元素个数
可以使用size()方法获取Set中元素的个数:
```java
set.size(); // 返回Set中元素的个数
```
7. 清空Set
可以使用clear()方法清空Set中的所有元素:
```java
set.clear(); // 清空Set中的所有元素
```
java中set集合的用法
Java中的Set集合是一种无序的集合,其中不允许重复元素。Set集合常用的方法有:
1. add(Object o):向集合中添加元素o,如果集合中已经存在元素o,则不会添加。
2. remove(Object o):从集合中删除元素o,如果集合中不存在元素o,则不会删除。
3. clear():清空集合中的所有元素。
4. contains(Object o):判断集合中是否包含元素o,如果包含则返回true,否则返回false。
5. isEmpty():判断集合是否为空,如果为空则返回true,否则返回false。
6. size():返回集合中元素的个数。
7. toArray():将集合转换为数组。
8. iterator():返回一个迭代器,可以用于遍历集合中的元素。
下面是一个示例:
```java
import java.util.*;
public class SetDemo {
public static void main(String[] args) {
// 创建一个Set集合
Set<String> set = new HashSet<String>();
// 添加元素
set.add("apple");
set.add("banana");
set.add("orange");
set.add("apple"); // 添加重复元素
// 输出集合中的元素
System.out.println(set);
// 判断集合中是否包含某个元素
System.out.println("set contains apple: " + set.contains("apple"));
System.out.println("set contains pear: " + set.contains("pear"));
// 删除元素
set.remove("banana");
// 遍历集合中的元素
Iterator<String> it = set.iterator();
while (it.hasNext()) {
String s = it.next();
System.out.println(s);
}
// 清空集合
set.clear();
System.out.println("set is empty: " + set.isEmpty());
}
}
```
输出结果为:
```
[orange, apple, banana]
set contains apple: true
set contains pear: false
orange
apple
set is empty: true
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)