java学习日记20230408-BigInteger类和BigDecimal类

BigInteger适合保存比较大的整型

BigDecimal适合保存精度更高的浮点数

  

public class BigInteger01 {

    public static void main(String[] args) {
        //当编程中需要处理很大的整数,long不够用,可以使用bigInteger类

        BigInteger bigInteger = new BigInteger("12312312313123213123123213");
        BigInteger bigInteger1 = new BigInteger("1");
        //BigInteger 的+-*/
        System.out.println(bigInteger.add(bigInteger1));
        System.out.println(bigInteger.subtract(bigInteger1));
        System.out.println(bigInteger.multiply(bigInteger));
        System.out.println(bigInteger.divide(bigInteger));

    }
}
public class BigDecimal01 {
    public static void main(String[] args) {
        BigDecimal bigDecimal = new BigDecimal("13213.1231231231231237128973129873912739127391287");
        System.out.println(bigDecimal);

        BigDecimal bigDecimal1 = new BigDecimal("0.123422342342342");

        //+-*/,除法可能抛出异常Non-terminating decimal expansion; no exact representable decimal result.


        System.out.println(bigDecimal.add(bigDecimal1));
        System.out.println(bigDecimal.subtract(bigDecimal1));
        System.out.println(bigDecimal.multiply(bigDecimal1));
        //调用divide方法时指定精度
        System.out.println(bigDecimal.divide(bigDecimal1,BigDecimal.ROUND_CEILING));
    }
}
posted @ 2023-04-06 00:39  、子夜  阅读(21)  评论(0)    收藏  举报