java中求两个数组的并集
时间: 2024-10-09 12:00:45 浏览: 44
在Java中,计算两个数组的并集通常需要创建一个新的集合(如ArrayList、HashSet等),然后将这两个数组的所有元素添加到这个新集合中,最后这个新集合就是原数组的并集。以下是一个简单的示例:
```java
import java.util.ArrayList;
import java.util.HashSet;
public ArrayList<Integer> union(int[] array1, int[] array2) {
HashSet<Integer> set = new HashSet<>();
// 将第一个数组添加到集合中
for (int num : array1) {
set.add(num);
}
// 添加第二个数组,会自动去除重复元素
for (int num : array2) {
set.add(num);
}
// 将集合转换回ArrayList作为结果返回
return new ArrayList<>(set);
}
```
在这个例子中,`set.add()`操作会自动处理重复的元素,所以不需要额外检查元素是否已经在集合中。如果你需要保留原始数组的顺序,可以考虑使用TreeSet,它会按照自然排序保持元素的顺序。
相关问题
Java如何实现求两个数组并集
在Java中,可以使用集合框架(如HashSet、TreeSet或ArrayList)以及流(Stream) API来合并两个数组并去除重复元素,创建它们的并集。以下是一个简单的例子:
```java
import java.util.Arrays;
import java.util.HashSet;
public class Main {
public static void main(String[] args) {
Integer[] array1 = {1, 2, 3};
Integer[] array2 = {3, 4, 5};
// 使用HashSet去重
HashSet<Integer> set1 = new HashSet<>(Arrays.asList(array1));
HashSet<Integer> set2 = new HashSet<>(Arrays.asList(array2));
// 合并两个集合
set1.addAll(set2);
// 将集合转换回数组
Integer[] resultArray = set1.toArray(new Integer[0]);
// 打印结果
System.out.println(Arrays.toString(resultArray));
}
}
```
运行上述代码,你会得到输出 `[1, 2, 3, 4, 5]`,这就是两个数组的并集。
java求两个数组的并集
您好,以下是求两个数组的并集的 Java 代码:
```java
import java.util.HashSet;
public class Main {
public static void main(String[] args) {
int[] arr1 = {1, 2, 3, 4, 5};
int[] arr2 = {4, 5, 6, 7, 8};
int[] union = getUnion(arr1, arr2);
for (int i : union) {
System.out.print(i + " ");
}
}
public static int[] getUnion(int[] arr1, int[] arr2) {
HashSet<Integer> set = new HashSet<>();
for (int i : arr1) {
set.add(i);
}
for (int i : arr2) {
set.add(i);
}
int[] union = new int[set.size()];
int index = 0;
for (int i : set) {
union[index++] = i;
}
return union;
}
}
```
希望能对您有所帮助!
阅读全文