如果操作的时候,一个整数数据已经超过了整数的最大类型长度long的话,则此数据就无法装入,所以,此时要使用BigInteger类进行操作

导包:import java.math

方法列表:

描述

BigInteger(String val)

将一个字符串变为BigInteger类型

add(BigInterger val)

加法

subtract(BigInterger val)

减法

multiply(BigInteger val)

乘法

divide(BigInteger val)

除法

mod(BigInteger val)

取余

max(BigInteger val)

返回两个大数字的最大值

min(BigInteger val)

返回两个大数字的最小值

Biginteger[] divideAndRemainder(BigInteger val)

除法操作,数组的第一个元素作为除法的商,第二个元素作为除法的余数

bool compareTo(BigInter other) 

判断是否相等

测试:

public class Demo {
    public static void main(String[] args) {
    String s1="123456781230123";
    String s2="987654321234567";
    BigInteger num1=new BigInteger(s1);
    BigInteger num2=new BigInteger(s2);
        System.out.println(num1.add(num2));//1111111102464690
        System.out.println(num1.subtract(num2));//-864197540004444
        System.out.println(num1.multiply(num2));//121932623467641563114289261741
        System.out.println(num2.divideAndRemainder(num1)[0]);//8
        System.out.println(num2.divideAndRemainder(num1)[1]);//71393583

    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

BigDecimal:

构造器描述 
BigDecimal(int)       创建一个具有参数所指定整数值的对象。 
BigDecimal(double) 创建一个具有参数所指定双精度值的对象。 //不推荐使用
BigDecimal(long)    创建一个具有参数所指定长整数值的对象。 
BigDecimal(String) 创建一个具有参数所指定以字符串表示的数值的对象。//推荐使用

方法描述 
add(BigDecimal)        BigDecimal对象中的值相加,然后返回这个对象。 
subtract(BigDecimal) BigDecimal对象中的值相减,然后返回这个对象。 
multiply(BigDecimal)  BigDecimal对象中的值相乘,然后返回这个对象。 
divide(BigDecimal)     BigDecimal对象中的值相除,然后返回这个对象。 
toString()                将BigDecimal对象的数值转换成字符串。 
doubleValue()          将BigDecimal对象中的值以双精度数返回。 
floatValue()             将BigDecimal对象中的值以单精度数返回。 
longValue()             将BigDecimal对象中的值以长整数返回。 
intValue()               将BigDecimal对象中的值以整数返回。