public void multiplyAPI(){
String data1 = "7853657";
String data2 = "78657";
BigDecimal mData1 = new BigDecimal(data1);
BigDecimal mData2 = new BigDecimal(data2);
BigDecimal destData = mData1.multiply(mData2);
System.out.println(data1+"\n乘 "+data2+"\n积结果destData:"+destData.toString());
BigDecimal subData = mData1.subtract(mData1);
BigDecimal addData = mData1.add(mData2);
BigDecimal diviData = mData1.divide(mData1);
}
public static String multiply(String num1, String num2) {
int len1 = num1.length();
int len2 = num2.length();
int[] result = new int[len1 + len2];
for (int i = len1 - 1; i >= 0; i--) {
for (int j = len2 - 1; j >= 0; j--) {
int mul = (num1.charAt(i) - '0') * (num2.charAt(j) - '0');
int sum = mul + result[i + j + 1];
result[i + j + 1] = sum % 10;
result[i + j] += sum / 10;
}
}
StringBuilder sb = new StringBuilder();
for (int num : result) {
if (!(sb.length() == 0 && num == 0)) {
sb.append(num);
}
}
return sb.length() == 0 ? "0" : sb.toString();
}