gpt4 book ai didi

java - 初始化 java.math.BigInteger

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:33:11 24 4
gpt4 key购买 nike

抱歉,这可能看起来像一个愚蠢的是或否问题,但我对此很陌生,所以我需要一个答案。

BigInteger i = BigInteger.valueOf(0);

BigInteger i = new BigInteger("0");

它们一样吗?

最佳答案

它们都以对值为 0 的 BigInteger 的引用结束,但它们在效果上并不相同。特别是,由于 valueOf 是一个静态方法,它可以利用缓存,如果你调用它两次,它会返回相同的引用:

BigInteger a = BigInteger.valueOf(0);
BigInteger b = BigInteger.valueOf(0);
System.out.println(a == b); // true on my machine

这似乎不是保证,但鉴于documentation,这肯定是有些预料之中的 :

Returns a BigInteger whose value is equal to that of the specified long. This "static factory method" is provided in preference to a (long) constructor because it allows for reuse of frequently used BigIntegers.

当你调用构造函数时,你真的每次都会得到一个新的实例。

就是说,对于这个特定示例,我只使用 BigInteger.ZERO...

关于java - 初始化 java.math.BigInteger,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39362430/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com