Разбить целое число на отдельные части - PullRequest
0 голосов
/ 14 мая 2018

Я в начале программирования, и мне нужна помощь с этим.Как я могу превратить целое число 123 в

1
2
3

в отдельных строк , если вы меня понимаете?Спасибо

Ответы [ 4 ]

0 голосов
/ 14 мая 2018

Решение 1 - выполнить все вычисления, используя целые числа

    int d = 123;
    int d1 = d % 10;
    int d2 = (d / 10) % 10;
    int d3 = (d / 100);

Решение 2 - Преобразовать в строку и использовать charAt

    int d = 123;
    String str = Integer.toString(d);
    for (int i = 0; i < str.length(); ++i)
    {
        System.out.println(str.charAt(i));
    }
0 голосов
/ 14 мая 2018

Два шага для достижения этой цели:

  • split, чтобы каждая цифра отделялась
  • для печати каждой строки на новой строке

Классический :

int foo = 123;
String[] split = (foo+"").split("");
for(int i=0; i<split.length; i++)
    System.out.println(split[i]);

Короче :

int foo = 123;
Arrays.asList((foo+"").split("")).forEach(System.out::println);
0 голосов
/ 14 мая 2018

Попробуйте это:

int number = 123;

while (number > 0) {
    System.out.println( number % 10);
    number = number / 10;
}
0 голосов
/ 14 мая 2018

Это должно сделать, но я не проверял это:

int a = 123;
int a1 = a % 10; // -> 3
int a2 = (a - a1)/10 % 10; // -> 2
int a3 = (a - a2*10 - a1)/100 % 10; // -> 1
...