计算整数各个数位之和
描述: 要求使用递归实现,计算整数各个数位之和。
举例: 123 –> 1+2+3 = 6
运行时间限制: 无限制
内存限制: 无限制
输入: 0xff ff ff ff以内的整数
输出: NA
样例输入: 123
样例输出: 6
package 华为机试题;
/**
* @author Hutongling
*
* @time:2017年4月9日 下午2:08:11
*/
public class 递归计算各位数位之和 {
static int sumOfBit(String string) {
if (string == null || string.length() == 0)
return 0;
int num = string.charAt(0) - '0';
string = string.substring(1, string.length());
return num + sumOfBit(string);
}
public static void main(String[] args) {
int num=123;
//int num=Integer.MAX_VALUE;
System.out.println("num="+num);
String string=num+"";
System.out.println("各位之和:"+sumOfBit(string));
}
}
代码结果:
num=123
各位之和:6