java - 如何在 Java 中处理大于 BigInteger 的大数?

标签 java biginteger largenumber

输入:

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/

相关文章:

java - 如何在 Netbeans 中调试 Ruby 基本方法?

c# - 如何从文件读取/写入 C# BigIntegers?

matlab - 为大 x 计算 4^x mod 2π

c - 显示128位长数据

java - 如何将大整数转换为二进制?

java - 正则表达式在 csv 字符串中查找值

java - Ubuntu 18.04 LTS 中的 "Error: File Not Found"

java - AWS 无法验证提供的访问凭证(eclipse)

java - RSA数字签名失败

c++ - 我应该使用什么算法进行高性能大整数除法?