【发布时间】:2015-12-09 19:21:35
【问题描述】:
我想知道如何从整数中获取每个单独的数字。请参阅我有这个程序,它从输入到程序中的整数中添加每个单独的数字。但是我认为有一种更简单的方法可以做到这一点。
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);
}
}
【问题讨论】:
-
如果您当前的代码有效,对于我们的姊妹网站Code Review,这可能是一个更好的问题。
-
您是要拆分一个整数,还是拆分多个整数,它们的工作原理应该相同,但我看不出您在上面做什么。
-
我刚刚看到“如何获取 int 数的单独数字?”它是一样的。我是 stack over flow 社区的新手,我几乎没有得到这个网站的流量。抱歉,这是重复的,以后不会再发生了。
-
@gonzo 我会看看你的网站。谢谢
标签: java while-loop int digit