一、题目描述:
给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。
注意:
num1 和num2 的长度都小于 5100.
num1 和num2 都只包含数字 0-9.
num1 和num2 都不包含任何前导零。
你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/add-strings/
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
二、代码描述:
class Solution {
public String addStrings(String num1, String num2) {
StringBuilder stringBuilder=new StringBuilder();
int carry=0;
int length1=num1.length()-1;
int length2=num2.length()-1;
while(length1>=0||length2>=0||carry!=0){
if(length1>=0){
carry+=num1.charAt(length1)-'0';
length1--;
}
if(length2>=0){
carry+=num2.charAt(length2)-'0';
length2--;
}
stringBuilder.append(carry%10);
carry/=10;
}
return stringBuilder.reverse().toString();
}
}