【发布时间】:2013-06-20 16:32:15
【问题描述】:
自从我开始将 eclipse 用于项目 euler 后,我注意到大数字有时会变成看似随机的负数。我想这与传递类型的边界有关。
如果您能向我解释这些负数是如何产生的以及其背后的逻辑是什么,我会很高兴。另外,我怎样才能避免它们(最好不要使用 BigInteger 类)。丹克!=)
【问题讨论】:
-
我猜“使用 eclipse”的意思是“使用 java”。我希望你知道 eclipse 与你的问题无关
-
Eclipse 只是一个 IDE。这意味着它只是您编辑、编译和运行代码的地方。您可能正在使用 Java 进行编码。
-
避免取决于您的具体问题。有时你无法避免使用
Biginteger,有时你可以。 -
是的,谢谢。抱歉,我只是不确定这是否会在不同的开发平台之间发生变化
-
当您在基本类型
int或long中进行加法、减法或乘法运算时,实际上是分别对 2³² 或 2⁶⁴ 进行模运算。
标签: java biginteger integer-overflow