JavaでBigDecimalの величину сравнить 方法は?
Javaでは、BigDecimalオブジェクトの大小をcompareTo()メソッドで使用できます。このメソッドは、2つのオブジェクトの大小関係を表す整数を返します。
compareTo()メソッドの構文は次のとおりです:
public int compareTo(BigDecimal val)
valは比較対象のBigDecimalオブジェクトです。
compareTo()メソッドの戻り値は以下の3通り
- val未満のオブジェクトが呼び出された場合は負の整数を返します。
- 呼び出されているオブジェクトがvalと等しい場合、0を返す。
- 呼び出し元のオブジェクトがvalより大きい場合は正の整数値を返す
戻り値の大小によって、2つのBigDecimalオブジェクトの大小関係がわかります。例えば、
BigDecimal num1 = new BigDecimal("10");
BigDecimal num2 = new BigDecimal("5");
int result = num1.compareTo(num2);
if (result < 0) {
System.out.println("num1小于num2");
} else if (result == 0) {
System.out.println("num1等于num2");
} else if (result > 0) {
System.out.println("num1大于num2");
}
上記のコードでは、num1は10、num2は5であり、compareTo()メソッドを呼び出すことで2つのオブジェクトを比較すると、戻り値は正の数なので、出力結果は「num1はnum2より大きい」となります。