比較のためにBigInteger
持っているだけですか?
< (より大きい) や < (より小さい) などの数学表記の代わりになるものはありますか? ↑答えた!equals
今知りたいのですが、やBigInteger
などの繰り返しで使用する方法はありますか?while
for
比較のためにBigInteger
持っているだけですか?
< (より大きい) や < (より小さい) などの数学表記の代わりになるものはありますか? ↑答えた!equals
今知りたいのですが、やBigInteger
などの繰り返しで使用する方法はありますか?while
for
compareToメソッドを使用できます。
数学表記を使用することはできません。実際、私は==を使用する習慣もありません。彼らが深刻なトリックを使用しない限り、失敗することは間違いありません。
a = new BigInteger(500);
b = a;
if( a == b )
will always be true
b=new BigInteger(500);
if( a == b )
will never be true
if( a.equals(b) )
will always work fine.
Javaは、この種のものに最適な言語ではありません。私はJavaが大好きですが、Complexクラスを実装してから、Complexクラスを保持および操作できるマトリックスを実装するのに多くの問題を抱えることになりました。
私の解決策は、Javaを使用してコアクラスを作成し、次にGroovyを使用してコアクラスを使用するクラスを作成することでした。特定の命名パターンに従う場合は、任意のクラスで任意の演算子を使用できます。
または、大きな数値をいじりたいだけの場合は、単にgroovyを使用し、変数の型を宣言することすらしないでください。必要なものに自動的に昇格します。
Java 演算子は、プリミティブ データ型のみを操作するように設計されています。クラスには作用しません。BigInteger はクラスであるため、算術比較と演算はクラス メソッドを介してのみ実行できます。