BigInteger类和BigDecimal类

BigInteger

  java中long型为最大整数类型,对于超过long型的数据如何去表示呢.在Java的世界中,超过long型的整数已经不能被称为整数了,它们被封装成BigInteger对象.在BigInteger类中,实现四则运算都是方法来实现,并不是采用运算符.

  BigInteger类的构造方法:

 BigInteger b = new BigInteger(str);

  构造方法中,采用字符串的形式给出整数

四则运算代码:

public static void main(String[] args) {

     //大数据封装为BigInteger对象

          BigInteger big1 = new BigInteger("12345678909876543210");

          BigInteger big2 = new BigInteger("98765432101234567890");

          //add实现加法运算

          BigInteger bigAdd = big1.add(big2);

          //subtract实现减法运算

          BigInteger bigSub = big1.subtract(big2);

          //multiply实现乘法运算

          BigInteger bigMul = big1.multiply(big2);

          //divide实现除法运算

          BigInteger bigDiv = big2.divide(big1);

}

 BigDecimal

BigDecimal类的构造方法

  1.public BigDecimal(double val)    将double表示形式转换为BigDecimal *不建议使用

  2.public BigDecimal(int val)  将int表示形式转换成BigDecimal

  3.public BigDecimal(String val)  将String表示形式转换成BigDecimal

加减乘除:

public BigDecimal add(BigDecimal value);                        //加法

public BigDecimal subtract(BigDecimal value);                   //减法 

public BigDecimal multiply(BigDecimal value);                   //乘法

public BigDecimal divide(BigDecimal value);                     //除法

用法:

public static void main(String[] args)
    {
        BigDecimal a = new BigDecimal("4.5");
        BigDecimal b = new BigDecimal("1.5");

        System.out.println("a + b =" + a.add(b));
        System.out.println("a - b =" + a.subtract(b));
        System.out.println("a * b =" + a.multiply(b));
        System.out.println("a / b =" + a.divide(b));
    }

 
原文地址:https://www.cnblogs.com/qq1312583369/p/11114286.html