BigInteger 处理比较大的整数
BigDecimal处理精度比较高的浮点数
public static void main(String[] args) {
BigInteger bigInteger = new BigInteger("123321456654789987111");
BigInteger num = new BigInteger("1233214567121316");
System.out.println(bigInteger.add(num));//加
System.out.println(bigInteger.subtract(num));//减
System.out.println(bigInteger.multiply(num));//乘
System.out.println(bigInteger.divide(num));//除
}
public static void main(String[] args) {
BigDecimal bigDecimal = new BigDecimal("123.1233216547899870000001");
BigDecimal num = new BigDecimal("11.1236654");
System.out.println(bigDecimal.add(num));//加法
System.out.println(bigDecimal.subtract(num));//减法
System.out.println(bigDecimal.multiply(num));//乘法
//除法运算时最好加上BigDecimal.ROUND_CEILING
//防止除不尽
//加上后保留的精度是bigDecimal的精度
System.out.println(bigDecimal.divide(num,BigDecimal.ROUND_CEILING));//除法
}