Я делаю проект, в котором я должен создать список массивов размером с пользовательский ввод (в данном случае я выбрал 4) со случайными числами от -1000 до 1000. Затем мне нужно, чтобы он выполнял сортировку выбора и отображал как несортированные числа в output1, так и отсортированные числа в output2 Вот что у меня есть до сих пор
ArrayList <Integer> unSortedNumbers = new ArrayList <Integer>();
Integer [] numberSort;
...
private void SortActionPerformed(java.awt.event.ActionEvent evt) {
String input, sortedNumberOutput = "";
int int1, int2 = 0, min = -1000, max = 1000, j, minimum, temp = 0;
input = Input.getText();
int1 = Integer.parseInt(input);
Random number = new Random();
while (int2 < int1) {
for (int i = 0; i < int1; i++) {
int randomInt = number.nextInt(max - min + 1) + min;
unSortedNumbers.add(randomInt);
int1--;
}
}
numberSort = new Integer[unSortedNumbers.size()];
unSortedNumbers.toArray(numberSort);
for (int i = 0; i < numberSort.length; i++) {
sortedNumberOutput += numberSort[i] + (i != numberSort.length ? "," : "");
}
if (Selection.isSelected() && Ascending.isSelected()) {
for (int i = 0; i < numberSort.length - 1; i++) {
minimum = numberSort[i];
for (j = i + 1; j <= numberSort.length - 1; j++) {
if (minimum > numberSort[j]) {
numberSort[temp] = numberSort[i];
numberSort[i] = numberSort[j];
numberSort[j] = numberSort[temp];
}
}
}
}
Output1.setText("Unsorted Numbers " + unSortedNumbers);
Output2.setText("Sorted Numbers " + numberSort);
unSortedNumbers.clear();
numberSort = null;
}
Поэтому, когда я запускаю это, unSortedNumbers правильно отображаются в output1, но вместо отображения отсортированных чисел в output2 отображается следующее: Sorted Numbers [Ljava.lang.Integer; @7a279c
Я не уверен, почему это происходит, возможно, я где-то ошибся. Если вы можете помочь, спасибо!
Arrays.toString
для отображения содержимого массива. - person Alexis C.   schedule 02.05.2014Output2.setText("Sorted Numbers " + Arrays.toString(numberSort));
должно работать. - person Alexis C.   schedule 02.05.2014