如何在java中以String格式计算大数的模数

piy*_*121 1 java math biginteger exponent bigdecimal

我试图在java中计算一个表达式,即在String中, 99999999999999999^99999999999999999 我想计算这个数模1000000007.我目前试图将大数字存储为double,但是使用double的模数给我NaN.有人可以帮忙吗?

Ell*_*sch 7

你可以使用BigIntegermodPow(BigInteger, BigInteger)喜欢

BigInteger m = new BigInteger("1000000007");
BigInteger a = new BigInteger("99999999999999999");
BigInteger b = new BigInteger("99999999999999999");
BigInteger answer = a.modPow(b, m);
System.out.println(answer);
Run Code Online (Sandbox Code Playgroud)

这使

265859324
Run Code Online (Sandbox Code Playgroud)

  • 就是那个. (3认同)