BigInteger
のインスタンスを想像してください。インスタンスを作成した後、それを初期化する方法を教えてください。
例えば:
BigInteger t = new BigInteger();
t
に値を入れる方法は?
コンストラクターを呼び出せない場合、オブジェクトに値を入れるために何ができますか?
他のオブジェクト配列と同じようにBigInteger配列の項目を初期化するときに、特に何が混乱するのかは100%わかりません。例えば。、
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};
編集1:
ああ、私はあなたの問題を理解しました。BigIntegerインスタンスを作成し、後でその値を設定したいとします。答えは文字列の場合と同じです:できません、これは文字列のようなBigIntegerがimmutableであり、一度作成すると変更できないためです。このため、クラスには「セッター」メソッドがありません。 BigIntegervariableの値を変更する方法は、それを新しいBigIntegerインスタンスに設定することです。
Long(または通常の整数)をBigIntegerに変換するには、静的なファクトリメソッドvalueOfを使用します。 BigInteger.valueOf(<i>someInteger</i>)
を呼び出すと、指定した整数値を保持する新しいBigInteger
オブジェクトが返されます。 new BigInteger("" + <i>someInteger</i>)
を使用して同じものを取得することもできますが、これは扱いにくいです。
ここではいくつかの例を示します:
BigInteger t = BigInteger.valueOf(23);
int i = 66;
t = BigInteger.valueOf(i);
t = BigInteger.ZERO
私はこのようなことをしました
//initialize with zero
BigInteger t = BigInteger.ZERO;
//if i is any value that is to be assigned
t=t.add(BigInteger.valueOf(i));