现给出两个数组,每个数组都有10个元素,请求两个数组的交集,如交集为空,请输出NULL,否则输出交集元素(数组元素取值范围0~1000) 输入 第一个数组元素 第二个数组元素 输出 在两个数组中都出现的元素(无需排序) java
时间: 2024-02-12 16:09:53 浏览: 73
好的,这个问题可以使用 Java 中的 `HashSet` 来解决,以下是代码实现:
```java
import java.util.HashSet;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int[] arr1 = new int[10];
int[] arr2 = new int[10];
HashSet<Integer> set1 = new HashSet<>();
HashSet<Integer> set2 = new HashSet<>();
for (int i = 0; i < 10; i++) {
arr1[i] = scanner.nextInt();
set1.add(arr1[i]);
}
for (int i = 0; i < 10; i++) {
arr2[i] = scanner.nextInt();
set2.add(arr2[i]);
}
set1.retainAll(set2);
if (set1.isEmpty()) {
System.out.println("NULL");
} else {
for (int num : set1) {
System.out.println(num);
}
}
}
}
```
首先我们用数组接收输入的两个数组,然后遍历数组将元素添加到对应的 `HashSet` 中,最后使用 `retainAll` 方法求交集,如果交集为空,输出 "NULL",否则遍历交集输出元素即可。
阅读全文