在Java中,要将字符串转换为BigInteger,您可以使用构造函数new BigInteger(String)
,但要将int/long转换为使用工厂函数BigInteger.valueof(long)
,为什么?为什么BigInteger(String)没有BigInteger(long)?
7
A
回答
11
其中是 a BigInteger(long)
构造函数,但它是私有的。在工厂方法的Javadoc提供的信息的原因:
此“静态工厂方法”优先提供给(长) 构造,因为它允许常用 BigIntegers的重用。
20
@Morad你可以找到在文档答案:JavaDoc of BigInteger.valueOf(long):
此“静态工厂方法”被优先提供给(长) 构造,因为它允许常用 BigIntegers的重用。
解释:BigInteger.valueOf(long)
做,你会从BigInteger(long)
构造期望到底是什么,它是(或应该是)它更有效率。
相关问题
- 1. BigInteger(long)在BigInteger中有私人访问
- 2. BigInteger Library
- 3. 在java中制作bigInteger大小biginteger
- 4. C++ Biginteger,这是什么意思?
- 5. 没有任何反应[BigInteger的]
- 6. 转换的BigInteger为字符串,然后回的BigInteger
- 7. BigInteger in C?
- 8. 的BigInteger到Hexadeximal
- 9. RSA- BIgInteger问题
- 10. Java BigInteger素数
- 11. Groovy来BIGINTEGER
- 12. Silverlight中的BigInteger
- 13. BigInteger在Kotlin
- 14. srp6 IntPtr到BigInteger
- 15. 随机化BigInteger
- 16. BigInteger + - 操作?
- 17. BigInteger in Properties.Settings.Default
- 18. BigInteger问题
- 19. BigInteger to Key
- 20. BigInteger上的OutOfMemoryError
- 21. BigInteger.pow()与BigInteger
- 22. 从Integer转换为BigInteger
- 23. byte []为无符号BigInteger?
- 24. 解组JSON为String,BigInteger和BigDecimal与杰克逊非常接近
- 25. 为什么没有String#shift()?
- 26. Java,比较BigInteger值
- 27. 数太大的BigInteger
- 28. Biginteger auto_increment主键Phinx
- 29. biginteger计算问题
- 30. avro 1.8.1 BigInteger转换
这就是他们在建造时的设计方式。你将不得不问谁创造BigInteger这个问题。 – brso05 2014-10-03 20:25:31
通常情况下,实现缓存常见值,例如接近0的正整数。 – 2014-10-03 20:27:50
@JakeCobb - 确切地说 - 在这种情况下,它缓存的值介于-16和16之间。 – Krease 2014-10-03 21:10:56