package work1;
import java.util.Scanner;
public class BigIntegerTest {
public static void main(String[] args) {
String s2 = "124";
String s1 = "25346";
int flagpos = 0;
int s1length = s1.length();
int s2length = s2.length();
char[] arr1 = s1.toCharArray();
char[] arr2 = s2.toCharArray();
int[] ans = new int[s1.length() + s2.length()];
int minLength = Math.min(s1.length(), s2.length());
int ii = 0;
//把末尾几位相加
for (ii = 0; ii < minLength; ii++) {
int count = Integer.parseInt("" + arr1[s1length - 1]) + Integer.parseInt("" + arr2[s2length - 1]);
ans[ii] = count;
s1length--;
s2length--;
}
//判断出最长的那个数,然后把多余的放在新的数组中
if (arr1.length > minLength) {
for (int i = (arr1.length - minLength - 1); i >= 0; i--) {
ans[ii] = Integer.parseInt("" + arr1[i]);
ii++;
}
}
if (arr2.length > minLength) {
for (int j = (arr2.length - minLength - 1); j >= 0; j--) {
ans[ii] = Integer.parseInt("" + arr2[j]);
ii++;
}
}
//进行取模运算,并进行进位相加
for (int i = 0; i < ans.length; i++) {
if (ans[i] >= 10) {
int temp = ans[i] % 10;
ans[i + 1] = ans[i + 1] + ans[i] / 10;
ans[i] = temp;
}
}
//找到不为0的标志位
for (int i = ans.length - 1; i >= 0; i--) {
if (ans[i] != 0) {
flagpos = i;
break;
}
}
//打印数组
for (int i = flagpos; i >= 0; i--) {
System.out.print(ans[i]);
}
}
}