算法:算法就是类似于我们数学上从右到左进行计算,如果进位就再加上进位的那个数
错误点:while循环的时候应该加上(addition!=0),原因是最后一位有进位,再就是由于两个字符的长度有变化,所以需要判断两个长度的大小,转换为对应的整数值
class Solution {
public String addStrings(String num1, String num2) {
int i = num1.length()-1,j=num2.length()-1;
StringBuffer sb = new StringBuffer();
int sum = 0,append = 0;
while(i>=0 ||j>=0 ||append!=0){
int x = i>=0?num1.charAt(i)-'0':0;
int y= j>=0?num2.charAt(j)-'0':0;
sum = (x+y+append)%10;
append =(x+y+append)/10;
sb.append(sum);
i--;
j--;
}
return sb.reverse().toString();
}
}