Gee*_*eek 49 java integer-overflow biginteger
我查看了与Big Integer有关的stackoverflow问题,特别是我不理解这一行(斜体字):
在BigInteger类中,我没有限制,并且有一些有用的函数,但将你漂亮的代码转换为使用BigInteger类非常令人沮丧,特别是当原始操作符不能在那里工作时你必须使用这个类中的函数.
我不知道我错过了什么,但代表一些没有限制的东西,你需要无限的记忆?这是什么诀窍?
Gra*_*and 81
没有理论上的限制.的BigInteger
,因为它需要为它被要求保存数据的所有位级分配尽可能多的内存.
然而,存在一些实际限制,由可用存储器决定.还有其他技术限制,虽然你不太可能受到影响:有些方法假设这些位可以被int
索引寻址,所以当你超过Integer.MAX_VALUE
位时,事情就会开始破坏.
Ada*_*der 16
格雷厄姆对这个问题给出了很好的答案.我只想补充一点,你必须小心valueOf
方法因为它是使用long
参数创建的,所以最大值是Long.MAX_VALUE
.
是的,当我们需要具有任意精度的非常大的数字时使用它。重要的是要注意,“任意”精度或位数并不意味着“无限制”:这意味着计算中的位数或精度位数受内存和/或定义的精度限制限制我们指定的。
归档时间: |
|
查看次数: |
62873 次 |
最近记录: |