【Java】BigDecimalでゼロかどうか比較する方法

【Java】BigDecimalでゼロかどうか比較する方法

管理人
この記事ではJavaのBigDecimalでゼロかどうか比較する方法について解説します。

 JavaのBigDecimalでBigdecimalではゼロの値を小数点も含め保持することができます。

 例えば、以下のように0の値を小数点を保持していることを確認できます。

BigDecimal b1 = new BigDecimal("0");
BigDecimal b2 = new BigDecimal("0.0");
BigDecimal b3 = new BigDecimal("0.00");
System.out.println(b1);
System.out.println(b2);
System.out.println(b3);

// 実行結果
0
0.0
0.00

小数点以下を区別しない場合はcompareTo、区別する場合はequals

 小数点以下を区別しない場合はcompareTo、区別する場合はequalsで判定してあげる必要があります。

 以下のサンプルプログラムにて動作を確認します。

BigDecimal b1 = new BigDecimal("0");
BigDecimal b2 = new BigDecimal("0.0");
BigDecimal b3 = new BigDecimal("0.00");
System.out.println(b1.compareTo(b1) == 0);
System.out.println(b1.compareTo(b2) == 0);
System.out.println(b1.compareTo(b3) == 0);
System.out.println(b2.compareTo(b3) == 0);
System.out.println(b1.equals(b1));
System.out.println(b1.equals(b2));
System.out.println(b1.equals(b3));
System.out.println(b2.equals(b3));

// 実行結果
true
true
true
true
true
false
false
false

管理人
Javaの記事の一覧はJava にまとめてあります

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

PAGE TOP