415.字符串相加
题目描述
题解
详细题解看代码
class Solution {
public String addStrings(String num1, String num2) {
StringBuilder sb = new StringBuilder();
// 一开始默认进位为0
int carry = 0;
// 从最后一个开始数字字符开始
int i = num1.length() - 1, j = num2.length() - 1;
// 如果还有进位
while (i >= 0 || j >= 0 || carry != 0) {
int x = i >= 0 ? num1.charAt(i) - '0' : 0;
int y = j >= 0 ? num2.charAt(j) - '0' : 0;
int result = x + y + carry;
sb.append(result % 10);
// 更新进位
carry = result / 10;
i--;
j--;
}
sb.reverse();
return sb.toString();
}
}