BigInteger 和 BigDecimal 介绍
应用场景
- BigInteger适合保存比较大的整型
- BigDecimal适合保存精度更高的浮点型(小数)
package com.tao.biginteger_;
import java.math.BigInteger;
public class BigInteger_ {
public static void main(String[] args) {
long l = 2323232454587787877L;
System.out.println("l = " + l);
BigInteger bigInteger = new BigInteger("464664648574744464646464646464");
System.out.println(bigInteger);
BigInteger add_ = new BigInteger("1");
add_ = bigInteger.add(add_);
System.out.println(add_);
BigInteger subtract_ = bigInteger.subtract(add_);
System.out.println(subtract_);
BigInteger bigInteger1 = new BigInteger("1");
BigInteger multiply_ = bigInteger.multiply(bigInteger1);
System.out.println(multiply_);
BigInteger divide_ = bigInteger.divide(bigInteger1);
System.out.println(divide_);
}
}
l = 2323232454587787877 464664648574744464646464646464 464664648574744464646464646465 -1 464664648574744464646464646464 464664648574744464646464646464
package com.tao.biginteger_;
import java.math.BigDecimal;
public class BigDecimal_ {
public static void main(String[] args) {
double d = 1999.111111111111111111111111111111d;
System.out.println(d);
BigDecimal bigDecimal = new BigDecimal("1999.11");
System.out.println(bigDecimal);
BigDecimal bigDecimal1 = new BigDecimal("1.1");
System.out.println(bigDecimal.add(bigDecimal1));
System.out.println(bigDecimal.subtract(bigDecimal1));
System.out.println(bigDecimal.multiply(bigDecimal1));
System.out.println(bigDecimal.divide(bigDecimal1,BigDecimal.ROUND_CEILING));
}
}
1999.111111111111 1999.11 2000.21 1998.01 2199.021 1817.38
|