如何处理java中比BigInteger大的大数?

时间:2017-04-08 19:45:20

标签: java biginteger largenumber

输入

BigInteger l = BigInteger.valueOf(111111111111111110);

编译器错误消息

  

整数太大

我的目标是不断减少给定的大数,直到某个值(比如K)。

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:7)

  

整数太大

它发出错误的原因是因为您传递到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");