写一个java代码用以找出两个数组的公共部分
时间: 2024-10-15 20:27:16 浏览: 2
在Java中,我们可以使用HashSet数据结构来找到两个数组之间的公共元素。HashSet是一个不允许有重复元素的集合,所以当我们把两个数组添加到HashSet中,最后剩下的元素就是它们的公共部分。以下是简单的代码示例:
```java
import java.util.HashSet;
public class CommonElements {
public static int[] findCommon(int[] array1, int[] array2) {
HashSet<Integer> set = new HashSet<>();
// 添加第一个数组的所有元素
for (int num : array1) {
set.add(num);
}
// 查找第二个数组中存在的、也在set里的元素
int[] result = new int[array2.length];
int index = 0;
for (int num : array2) {
if (set.contains(num)) {
result[index++] = num; // 如果找到就添加到结果数组
set.remove(num); // 从set中移除已处理的元素,防止重复查找
}
}
// 返回结果数组,直到所有找到的元素都添加完成或array2遍历完
return Arrays.copyOf(result, index);
}
public static void main(String[] args) {
int[] array1 = {1, 2, 3, 4, 5};
int[] array2 = {4, 5, 6, 7, 8};
int[] common = findCommon(array1, array2);
System.out.println("Common elements are: " + Arrays.toString(common));
}
}
```
阅读全文