Fri*_*rdt 33 java biginteger long-integer
据我了解,双方java.lang.Long并java.math.BigInteger可以容纳非常大的自然数.
我也知道Long的最大值,但BigInteger的最大值是多少?
除了容量之外,BigInteger在处理仍然落在Long范围内的一般大整数时会表现得更好吗?
唯一的考虑因素是:我的价值对于龙来说太大了吗?
AHu*_*ist 44
BigInteger能够持有比Long更大的数字.BigInteger似乎能够持有(2 ^ 32)^ Integer.MAX_VALUE,尽管这取决于实现(并且,即使在实现中真正无限制,最终也会有物理资源限制)请参阅此处的解释.
范围Long是[-9,223,372,036,854,775,808,+ 9,223,372,036,854,775,807].
Long会比BigInteger表现更好,所以它实际上取决于你的值的大小.如果它们都属于Long的最大值,则不使用Long是没有意义的.如果任何大于Long max值,你几乎必须使用BigInteger.