今日Javaコードを閲覧していて、何かに気づきました。
int[] m = mag;
int len = m.length;
int[] xm = xInt.mag;
if (len != xm.length)
return false;
(これはBigInteger
クラスにあり、解凍すると見つかりsrc.zip
ます。メソッドにあります。) 1回だけ使用するとequals
、まったく新しい変数が作成されるのはなぜですか。m
なぜコードだけではないのint len = mag.length
ですか?私はこれを別の方法でも見ました(bitLength
)、そして繰り返しm
ますが、一度だけ使用されます。これを行うことに利点はありますか、それともこのクラスの作成者による単なる間違いですか?
編集:@usernametbdが指摘したように、少し後で使用されます:
for (int i = 0; i < len; i++)
if (xm[i] != m[i])
return false;
しかし、彼らはまだ使用できたはずmag
です。なぜまったく新しい変数が作成されるのでしょうか。
別の関数(同じクラス内bitLength
)で、新しい変数m
が作成され、1回だけ使用されます。