我正在寻找一个 Java 库,它可以处理真正巨大的数字或关于如何自己实现它的建议。我们正在谈论超越BigInteger
。例如2^39614081257132168796771974655+1怎么样。
显然,理论上,我可以使用一个TreeSet<BigInteger>
, 每位一个条目并做所有的数学老派,但我正在寻找可以使用内置数学硬件对这些数字进行一些真正数学运算的东西。我不期待任何真正快速的东西,但我非常想接近。
设置位的数量可能非常少 - 我代表 G2 多项式。
有人知道那里有什么吗?
我怀疑包的一个功能必须是setBit(BigInteger i)
.
添加
感谢Apfloat的建议。可悲的是,以下是不可能的。它抱怨第二个参数必须是 a long
。
Apint two = new Apint(2);
Apint big = new Apint("39614081257132168796771974655");
ApintMath.pow(two, big);
请注意,我也愿意接受有关如何自己执行此操作的建议。
添加- 尝试重新打开。
请参阅user2246674 的帖子,提醒我们这些数字有多么惊人——我可以向你保证,我们在这里讨论的不是一些普通的数学库,而是一些严肃Math.pow(age-of-the-universe,atoms-in_the_galaxy)
的数字——我们当然不是在寻找固执己见的答案。