java collection属去重
时间: 2024-08-13 07:02:45 浏览: 60
在Java中,Collection系列(如List、Set等)是用来存储一系列元素的数据结构。如果你想从集合中去除重复的元素,有几种常用的方法:
1. **HashSet**:Set接口的一个实现,内部基于哈希表实现,自动保证元素唯一,你可以直接将List转换为HashSet,重复元素会自动消除。
```java
List<String> list = ...;
Set<String> set = new HashSet<>(list);
```
2. **TreeSet**:Set的另一种实现,它维护了一个有序的树形结构,可以提供自然排序,并通过equals()方法判断元素是否重复。
3. **流API**:Java 8引入了Stream API,可以方便地处理集合操作,包括去重。
```java
List<String> list = ...;
list = list.stream()
.distinct()
.collect(Collectors.toList());
```
4. **for-each循环和remove**:遍历集合并逐个检查元素,如果发现某个元素已经在另一个集合中,则移除当前集合中的这个元素。
```java
List<String> originalList = ...;
List<String> uniqueList = new ArrayList<>();
for (String element : originalList) {
if (!uniqueList.contains(element)) {
uniqueList.add(element);
}
}
```
阅读全文