java 两个集合去重
时间: 2024-01-18 20:47:27 浏览: 185
可以使用Set来实现两个集合的去重:
```
Set<Integer> set1 = new HashSet<>(list1);
Set<Integer> set2 = new HashSet<>(list2);
set1.addAll(set2);
List<Integer> result = new ArrayList<>(set1);
```
这段代码先将两个列表转换为Set,然后将它们合并为一个Set,最后将结果转换为List。这样可以保证去重后的元素顺序不变。
相关问题
Java 两个集合去重,生成一个新的集合
你可以使用HashSet来实现两个集合的去重。HashSet是一种不允许有重复元素的集合,它可以帮助我们快速去除重复元素。下面是一个示例代码:
```java
import java.util.HashSet;
import java.util.Set;
public class SetDuplication {
public static Set<String> removeDuplicates(Set<String> set1, Set<String> set2) {
Set<String> resultSet = new HashSet<>();
resultSet.addAll(set1);
resultSet.addAll(set2);
return resultSet;
}
public static void main(String[] args) {
Set<String> set1 = new HashSet<>();
set1.add("apple");
set1.add("banana");
set1.add("orange");
Set<String> set2 = new HashSet<>();
set2.add("banana");
set2.add("grape");
set2.add("watermelon");
Set<String> result = removeDuplicates(set1, set2);
System.out.println(result);
}
}
```
在这个示例中,我们创建了两个HashSet集合set1和set2,并将元素添加到各自的集合中。然后我们创建了一个新的HashSet集合resultSet,并使用addAll()方法将set1和set2中的元素添加到resultSet中。由于HashSet不允许有重复元素,所以重复的元素将自动被去除。最后,我们输出resultSet,即包含set1和set2中所有不重复元素的新集合。运行上面的代码,你会得到一个新的集合,其中包含set1和set2中的所有不重复元素。
java两个list集合去重合并
在Java中,将两个List集合去重并合并,可以采用多种方法。这里提供一种基于Set数据结构的方式:
```java
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
public List<String> mergeAndRemoveDuplicates(List<String> list1, List<String> list2) {
// 将两个列表转换为HashSet去除重复元素
HashSet<String> set = new HashSet<>(list1);
set.addAll(list2);
// 再将Set转换回ArrayList
List<String> result = new ArrayList<>(set);
return result;
}
```
这个方法首先创建一个HashSet,因为HashSet不允许有重复元素,所以它会自动去除列表中的重复项。然后将两个列表都添加到Set中,再将Set转换回ArrayList,得到的就是合并后的去重列表。
如果你想保留原列表的顺序,可以使用LinkedHashSet,因为它维护元素插入的顺序:
```java
List<String> merged = new ArrayList<>();
merged.addAll(list1); // 先添加list1保持原始顺序
merged.addAll(set); // 添加去重后的元素
return merged;
```
阅读全文
相关推荐















