#java #arrays #arraylist #numbers #digits
#java #массивы #arraylist #числа #цифры
Вопрос:
Я хотел бы сохранить цифры числа по отдельности в массиве / arraylist и записать их в заданном порядке. Любые предложения, что я делаю не так?
import java.util.Scanner;
import java.util.ArrayList;
import java.util.List;
class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
List<Integer> digits = new ArrayList<Integer>();
int number = scanner.nextInt();
while (number > 0) {
int digit = number % 10; // Store digit in a variable
number = number/10;
digits.add(digit); // Add digit to the list
}
System.out.println(digits.get(1, 0)); //given the scanned number eg. 23, i'd like to write out 32
}
}
Комментарии:
1. Каков результат при запуске этого? Если это исключение, пожалуйста, скопируйте и вставьте его в вопрос. Если вывод неверен, пожалуйста, добавьте входные данные, ожидаемый результат и фактический результат.
2.
digits.get(1, 0)
неправильный синтаксис. Вам нужно пройти через ArrayList, чтобы прочитать все перевернутое число. Кроме того, вместо использования ArrayList вы можете просто создать обратное число в цикле while.
Ответ №1:
Если я правильно понял, вам просто нужно распечатать цифры? потому что число правильно добавлено в список.
Просто замените
System.out.println(digits.get(1, 0));
с:
for (int i = 0; i < digits.size() ; i ) {
System.out.print(digits.get(i));
}