java编程: hashmap去做合并 从键盘输入两个数组输出新数组要求删除输入两数组相同的元素输出不同的元素
你可以使用HashMap来解决这个问题。首先,从键盘输入两个数组,并将它们存储在两个不同的数组中。然后,创建一个HashMap来存储第一个数组中的元素。遍历第二个数组,将其元素作为键来查询HashMap。如果HashMap中不存在该键,则将该元素添加到结果数组中。
以下是一个示例代码:
import java.util.*;
public class MergeArrays {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 输入第一个数组
System.out.print("输入第一个数组的长度:");
int n1 = scanner.nextInt();
int[] arr1 = new int[n1];
System.out.println("输入第一个数组的元素:");
for (int i = 0; i < n1; i++) {
arr1[i] = scanner.nextInt();
}
// 输入第二个数组
System.out.print("输入第二个数组的长度:");
int n2 = scanner.nextInt();
int[] arr2 = new int[n2];
System.out.println("输入第二个数组的元素:");
for (int i = 0; i < n2; i++) {
arr2[i] = scanner.nextInt();
}
// 使用HashMap进行合并
Map<Integer, Boolean> map = new HashMap<>();
for (int num : arr1) {
map.put(num, true);
}
List<Integer> result = new ArrayList<>();
for (int num : arr2) {
if (!map.containsKey(num)) {
result.add(num);
}
}
// 输出结果
System.out.println("合并后的数组:");
for (int num : result) {
System.out.print(num + " ");
}
}
}
这个程序首先从键盘输入两个数组的长度和元素。然后,使用HashMap将第一个数组的元素添加到map中。接下来,遍历第二个数组,在map中查找是否存在该元素,如果不存在,则将其添加到结果数组中。最后,输出结果数组。
希望对你有所帮助
原文地址: https://www.cveoy.top/t/topic/h7am 著作权归作者所有。请勿转载和采集!