如何处理 java 中大于 BigInteger 的大数?
How to handle large number that is bigger than BigInteger in java?
输入:
BigInteger l = BigInteger.valueOf(111111111111111110);
编译错误信息
Integer number too large
我的objective是将给定的大数不断递减直到某个值(比如K)。
我怎样才能做到这一点?
Integer number too large
它给出错误的原因是因为您传递给 valueOf(...)
参数的类型是 int
(这是默认类型,除非您另外指定)有一个限制,你已经超过了这个限制,因此出现了错误。
BigInteger l = BigInteger.valueOf(111111111111111110); // argument is int, so it will give a compiler error
改用 long
参数。
BigInteger value = BigInteger.valueOf(111111111111111110L);
或使用 string
参数。
BigInteger value = new BigInteger("111111111111111110");
输入:
BigInteger l = BigInteger.valueOf(111111111111111110);
编译错误信息
Integer number too large
我的objective是将给定的大数不断递减直到某个值(比如K)。
我怎样才能做到这一点?
Integer number too large
它给出错误的原因是因为您传递给 valueOf(...)
参数的类型是 int
(这是默认类型,除非您另外指定)有一个限制,你已经超过了这个限制,因此出现了错误。
BigInteger l = BigInteger.valueOf(111111111111111110); // argument is int, so it will give a compiler error
改用 long
参数。
BigInteger value = BigInteger.valueOf(111111111111111110L);
或使用 string
参数。
BigInteger value = new BigInteger("111111111111111110");