Я пишу программу, которая будет принимать пользовательский ввод и сортировать его в порядке возрастания или убывания в зависимости от того, что они выберут. Я попытался использовать простой массив, но он не работал должным образом с методами сортировки массива, поэтому я попробовал ArrayList. Кажется, это работает, за исключением того факта, что он читает только первый int, набранный пользователем. Я попробовал метод addAll, но оказалось, что он работает только для коллекций, а не переменных.
Это мой код:
import java.util.Scanner;
import java.util.ArrayList;
import java.util.Collections;
public class ElevenThree {
public static void main (String[] args) {
Scanner scan = new Scanner(System.in);
ArrayList<Integer> arrayList = new ArrayList<Integer>();
int size = 0;
int type = scan.nextInt();
if(type == 0) {
size = scan.nextInt();
arrayList.add(scan.nextInt());
Collections.sort(arrayList);
}
if (type == 1) {
size = scan.nextInt();
arrayList.add(scan.nextInt());
Collections.sort(arrayList, Collections.reverseOrder());
}
System.out.println(arrayList);
}
}
Вход:
0
9
4 3 6 8 9 2 1 5 7
Выход:
[4]
Кстати, у меня размер переменная, потому что это присваивание через программу, которая автоматически вводит переменную размера, поэтому она должна быть там, даже если это никак не влияет на программу.