输入:
BigInteger l = BigInteger.valueOf(111111111111111110);
编译器错误信息
Integer number too large
我的目标是连续递减给定的大数直到某个值(比如 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);
或使用字符串
参数。
BigInteger value = new BigInteger("111111111111111110");
关于java - 如何在 Java 中处理大于 BigInteger 的大数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43299638/