如何在创建instantces后初始化BigInteger(无法调用构造函数)

Coo*_*ect 13 java biginteger

想象一个实例BigInteger,然后在创建实例后如何初始化它?

例如:

BigInteger t = new BigInteger();
Run Code Online (Sandbox Code Playgroud)

如何投入价值t

如果无法调用构造函数,那么可以做什么,将值放在对象中?

Hov*_*els 9

我不是百分之百确定你在BigInteger数组中初始化项目时会特别混淆你的东西,就像任何其他对象数组一样.例如,

  BigInteger t2 [] = new BigInteger[2];

  t2[0] = new BigInteger("2");
  t2[1] = BigInteger.ZERO; // ZERO, ONE, and TEN are defined by constants

  // or

  BigInteger[] t3 = {new BigInteger("2"), BigInteger.ZERO};
Run Code Online (Sandbox Code Playgroud)

编辑1:
啊,现在我理解你的问题了:你想创建一个BigInteger实例,然后再设置它的值.答案与字符串相同:你不能,而且因为像字符串这样的BigIntegers是不可变的,一旦创建就无法更改.因此,该类没有"setter"方法.更改BigInteger 变量值的方法是将其设置为新的BigInteger实例.


ncm*_*ist 5

要将long(或常规整数)转换为BigInteger,请使用静态工厂方法valueOf.该调用BigInteger.valueOf(<i>someInteger</i>)返回一个包含BigInteger您指定的整数值的新对象.你也可以使用new BigInteger("" + <i>someInteger</i>)来获得同样的东西,但这很笨拙.

  • 阅读文档.它的第一句话是:*不可变的任意精度整数*.BigInteger是不可变的.一旦创建,它就不能再被更改了.构建另一个. (3认同)