使用java从数组中删除与另外一个数组重复的元素
时间: 2024-09-27 22:08:21 浏览: 33
在Java中,你可以使用数据结构如HashSet或ArrayList配合遍历来从一个数组中删除与另一个数组中存在的重复元素。这里提供一种简单的示例:
```java
import java.util.ArrayList;
import java.util.HashSet;
public class RemoveDuplicates {
public static void removeDuplicates(int[] arr1, int[] arr2) {
HashSet<Integer> set = new HashSet<>();
for (int num : arr2) {
set.add(num);
}
ArrayList<Integer> result = new ArrayList<>(arr1.length);
for (int i = 0; i < arr1.length; i++) {
if (!set.contains(arr1[i])) {
result.add(arr1[i]);
}
}
// 将结果复制回原始数组,如果不需要原始数组,可以直接返回result数组
System.arraycopy(result.toArray(), 0, arr1, 0, result.size());
}
public static void main(String[] args) {
int[] array1 = {1, 2, 3, 4, 5};
int[] array2 = {4, 5, 6, 7};
removeDuplicates(array1, array2);
// 打印处理后的array1,会发现重复元素4和5已被移除
for (int num : array1) {
System.out.print(num + " ");
}
}
}
```
在这个例子中,我们首先将`arr2`中的所有元素添加到`set`中,然后遍历`arr1`,如果`set`中不存在当前元素,则将其添加到结果列表`result`。最后,我们将`result`的内容复制回`arr1`。
阅读全文