Java 数之和

Java 数之和,java,math,Java,Math,说我有123号 有没有一种计算效率很高的方法可以将1+2+3相加并得到答案 理想情况下,我会避免对字符串进行分割或解析,因为我觉得这可能会非常低效。无需对字符串进行解析 int sum=0; while(n>0) { sum += n%10; // add the last digit n/=10; // remove the last digit. } 那么你想把所有的数字加在一起吗?你不能在代码审查时问这个问题。没有密码。哦,是的,但他想避免除法。不,@engkho

说我有123号

有没有一种计算效率很高的方法可以将1+2+3相加并得到答案


理想情况下,我会避免对字符串进行分割或解析,因为我觉得这可能会非常低效。

无需对字符串进行解析

int sum=0;
while(n>0)
{
    sum += n%10; // add the last digit
    n/=10;  // remove the last digit.
}

那么你想把所有的数字加在一起吗?你不能在代码审查时问这个问题。没有密码。哦,是的,但他想避免除法。不,@engkhoahuỳnh,他想要的是尽可能有效的东西,他认为除法不是最有效的方法,这可能是错误的。@Gabrielus你可以使用递归方法。