【发布时间】:2018-06-15 20:23:57
【问题描述】:
我可以使用以下代码合并数组并打印它,但在使用Arrays.sort 方法对其进行排序后无法打印数组。
问题出在哪里?
import java.util.Arrays;
import java.io.*;
import java.util.Scanner;
public class leetcode4Again {
public static void main(String args[]) throws IOException {
int a[] = new int[50];
int b[] = new int[50];
int merge[] = new int[a.length + b.length];
int count = 0, size1, size2, size;
int i = 0, k;
Scanner scan = new Scanner(System.in);
System.out.print("Enter Array 1 Size : ");
size1 = scan.nextInt();
System.out.print("Enter Array 1 Elements : ");
for (i = 0; i < size1; i++) {
a[i] = scan.nextInt();
}
System.out.print("Enter Array 2 Size : ");
size2 = scan.nextInt();
System.out.print("Enter Array 2 Elements : ");
for (i = 0; i < size2; i++) {
b[i] = scan.nextInt();
}
System.out.print("Merging the Arrays...\n");
for (i = 0; i < size1; i++) {
merge[i] = a[i];
}
size = size1 + size2;
for (i = 0, k = size1; k < size && i < size2; i++, k++) {
merge[k] = b[i];
}
Arrays.sort(merge);
System.out.print("Now the New Array after Merging is :\n");
for (i = 0; i < size; i++) {
System.out.print(merge[i] + " ");
}
}
}
【问题讨论】:
-
您期待看到什么?你看到了什么?
-
请阅读this。我们不知道你想在这里实现什么。
-
这里的“无法打印数组”是什么意思?你得到像
[I@4c75cab9这样的输出吗?顺便说一句,您所做的不称为“合并”,该术语在数据处理中具有特定含义。您所做的称为“连接”两个数组。