如何在while循环中使用模数来获取整数的个别数字?

时间:2014-10-17 22:59:24

标签: java while-loop modulo modulus integer-division

我希望找到一种方法来使用while循环(不是for循环)来获取通过命令行输入的整数的各个数字。现在,我已经硬编码了如果输入一个四位数整数如何得到个别数字,但如果我输入一个五位数字,它显然不起作用。我在想一个while循环应该可以解决这个问题,但我不确定如何......

这是我到目前为止的代码

2 个答案:

答案 0 :(得分:2)

试试这个:

List<Integer> digits = new ArrayList<Integer>();
while (number > 0)
{
    digits.add(number%10);
    number /= 10;
}

答案 1 :(得分:0)

试试这个:

int number = 567;
int[] digits = new int[String.valueOf(number).length()];
while (number > 0)
{
    digits[String.valueOf(number).length()-1] = number % 10;
    number /= 10;
}
System.out.println(Arrays.toString(digits));

可能不是最优雅的解决方案,但它会给出数字中的数字,与数字中的数字相同。示例12345将在输出时为数组赋值[1, 2, 3, 4, 5]