我正在考慮使用BigInteger類來存儲10-1000 MB範圍內的數字。有人對此有經驗嗎?超大數字是否存在實際或隱含的限制?極大數字的BigInteger性能
2
A
回答
8
那麼,documentation for BigInteger說,只要你有足夠的內存來處理它,數字可以是任何大小。
BigInteger上的常規操作(加,減,乘等等)比常規數值類型慢得多(根據某些測試,至少爲50x),但您可以忍受這種情況。另外,你必須記住BigInteger類型是不可變的,所以對它的操作將產生一個新的實例。因此,添加兩個10MB號碼將創建一個新的10MB號碼。它不會修改現有的實例。這可能會影響您構建代碼的方式。
唯一的實際限制是計算機上可用的內存量以及程序可用的內存量。對於32位進程,這應該至少爲3GB,對於64位應該至少爲3GB,因此您應該可以使用所需的數字。
2
相關問題
- 1. 加載BigInteger與一個大的積極的數字
- 2. 數太大的BigInteger
- 3. 提高Java的BigInteger性能
- 4. 極小數的可能性
- 5. JAVA BigInteger類錯誤:BigInteger:模數不積極
- 6. 將Java BigInteger用於巨大位掩碼的性能影響
- 7. 井字遊戲的極大極小
- 8. 如何提高性能極限?,1?是一個龐大的數字
- 9. MATLAB - 極大極小()函數
- 10. BigInteger,它是整數太大
- 11. 如何在java中處理大於BigInteger的大數字?
- 12. 極慢的MySQL性能
- 13. BigInteger到BigInteger的功能(Schnorr簽名)
- 14. 在java中製作bigInteger大小biginteger
- 15. 面對棋盤遊戲實現極大極小化的性能問題
- 16. CSS3背景大小屬性導致ff5極端性能問題
- 17. 錯誤分配時,大數量的BigInteger
- 18. Java極大整數
- 19. RDS Aurora(MySQL)性能極差
- 20. 終極版性能下降
- 21. MySQL加入性能極差
- 22. 極度延遲RecyclerView性能
- 23. 使用Java的BigInteger可能的素數
- 24. 極其緩慢的性能與大動態表
- 25. 如何爲BigInteger分配一個非常大的數字?
- 26. Java:在不使用BigInteger的情況下添加大數字
- 27. 的BigInteger modInverse不能與數字工作檢查,是可逆的
- 28. 積極和消極之間的數字
- 29. 將BigInteger二進制轉換爲BigInteger數字?
- 30. SQL JOIN爲了極大地改變了性能
10 - 1000 MB?爲什麼你會使用'BigInteger'來創建一個適合'int'的數字?如果你想知道'BigInteger'是如何執行的,那麼寫一些簡單的測試來比較'int'和'long'是如何實現的。可能帶你... 10分鐘? –
@JimMischel:1000000000會適合'int',但我認爲OP實際上意味着2^1000000000 – finnw
256^1000000000 :) – mafu