java求所有数位之和

来源:百度知道 编辑:UC知道 时间:2024/05/28 23:46:17
比如1234,要求结果为1+2+3+4=10,我用了charAt,但是取出的字符无法作数学运算阿,该咋办?

public class Test{
public static void main(String[] args){
String s = "1234";
int sum = 0;
for(int i=0;i<s.length();i++)
sum+=s.charAt(i)-48;
System.out.println(sum);
}

}

或者:
public class Test2{
public static void main(String[] args){
String s = "1234";
int sum=0;
for(int i =0;i<s.length();i++)
sum+=Integer.parseInt(s.substring(i,i+1));
System.out.println(sum);
}
}

再或者:
public class Test3{
public static void main(String[] args){
String s = "1234";
int sum=0;
double d = Double.parseDouble(s);
for(int i=s.length()-1;i>=0;i--){
double mode = Math.pow(10,i);
sum+=d/mode;
d%=mode;
}
System.out.println(sum);
}
}

我编了个小东西,调试运行通过。
发上来给你参考一下。

public class Test
{
public static void main(String[]