反转再反转。。
1 public class Solution { 2 public String addStrings(String num1, String num2) { 3 num1 = new StringBuffer(num1).reverse().toString(); 4 num2 = new StringBuffer(num2).reverse().toString(); 5 int c = 0; 6 String ans = ""; 7 for (int i = 0; i < Math.min(num1.length(), num2.length()); i++) { 8 c = (num1.charAt(i) - '0') + (num2.charAt(i) - '0') + c; 9 ans = ans + (char)('0' + c % 10); 10 c /= 10; 11 } 12 13 for (int i = Math.min(num1.length(), num2.length()); i < Math.max(num1.length(), num2.length()); i++) { 14 if (num1.length() < num2.length()) 15 c = (num2.charAt(i) - '0') + c; 16 else 17 c = (num1.charAt(i) - '0') + c; 18 ans += (char)('0' + c % 10); 19 c /= 10; 20 } 21 if (c > 0) 22 ans += (char)('0' + c); 23 return new StringBuffer(ans).reverse().toString(); 24 } 25 }