如何将整数转换为单个数字?

时间:2015-12-09 19:21:36

标签: java while-loop int digit

我想知道如何从整数中获取每个数字。请参阅我有这个程序,它从输入到程序中的整数中添加每个单独的数字。但是我认为有一种更简单的方法可以做到这一点。

import java.util.Scanner;
public class SumOfDigits
{
    public static void main(String[] args)
    {
        Scanner in = new Scanner(System.in);
        System.out.println("Enter a number greater than 1");
        int n = in.nextInt();
        int divisible = 10;
        int leftovers = 10;
        int sum = 0;
        while(leftovers <= n * 10)
        {
            int digit = 0;   
            if(n % leftovers < 10)
            {
                digit = n % leftovers;
            }
            else
            {
                digit= n % leftovers / divisible;    
            }

            sum = sum + digit;
            System.out.println(sum);
            leftovers *= 10;
            if(leftovers >= 1000)
            {
                divisible *= 10;
            }
        }
        System.out.println("The sum of the digits is " + sum);
    }
}

1 个答案:

答案 0 :(得分:3)

你想从数字中提取数字?像478中的4,7和8一样?

int value = 478, digit;
while (value != 0) {
    digit = value % 10;
    System.out.println(digit);
    value = value / 10;
}