long数据类型抛出numberformatexception

时间:2015-11-27 04:52:41

标签: java

Java 7中的数据类型长,超过20位时会抛出numberformatexception。这里有替代方案吗?

1 个答案:

答案 0 :(得分:0)

您可以使用BigInteger来进行更高位数的数学运算。

但是在除法中,它正在进行整数除法。(与整数数据类型一样)。对于大十进制数计算,您可以使用BigDecimal

使用BigInteger的示例如下所示。

    BigInteger b1 = new BigInteger("100000000000000000000000000000000000000000");
    BigInteger b2 = new BigInteger("100000");

    System.out.println("Addition: " + b1.add(b2));
    System.out.println("Subtraction: " + b1.subtract(b2));
    System.out.println("Division: " + b1.divide(b2));
    System.out.println("Multiplication: " + b1.multiply(b2));
    System.out.println("Power: " + b1.pow(1000));

有关详细信息,您只需google how to use biginteger in java

即可