一、BigDecimal工具类
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
BigDecimal b1 = new BigDecimal(sc.nextInt());
BigDecimal b2 = new BigDecimal(sc.nextInt());
System.out.println(b1.add(b2).toString());
}
}
二、转换为字符串解法
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s1 = sc.nextLine();
String s2 = sc.nextLine();
String n1 = new StringBuffer(s1).reverse().toString();
String n2 = new StringBuffer(s2).reverse().toString();
System.out.println("n1:" + n1);
System.out.println("n2:" + n2);
int l1 = n1.length();
int l2 = n2.length();
int maxL = l1 > l2 ? l1 : l2;
if (l1 < l2) {
for (int i = l1; i < l2; i++) {
n1 += "0";
}
} else {
for (int i = l2; i < l1; i++) {
n2 += "0";
}
}
System.out.println("n1:" + n1);
System.out.println("n2:" + n2);
StringBuffer res = new StringBuffer();
int c = 0;
for (int i = 0; i < maxL; i++) {
int curSum = Integer.parseInt(n1.charAt(i) + "") + Integer.parseInt(n2.charAt(i) + "") + c;
res.append(curSum % 10);
c = curSum / 10;
}
if (c > 0) {
res.append(c);
}
System.out.println(res.toString());
System.out.println(res.reverse());
}
}