JavaのBigDecimalについて

JavaのBigDecimalは、プリミティブデータ型(値型)では、使用することが出来る四則演算式(+,-,*,/)が使用出来ません。そのためにBigDecimalクラスのメソッドを使用します。 さらに、BigDecimalは、全ての比較演算子(<、==、>、>=、!=、<=)が使用できません。 BigDecimalの比較には、compareToメソッドを使用します。 compareToメソッドで比較したBigDecimaより小さい場合は-1、等しい場合は0、大きい場合は1が戻り値になります。

四則演算のサンプルソース

import java.math.BigDecimal;

/**
 * 計算クラス(BigDecimal)
 */
public class Compute {
	/**
	 * 計算(BigDecimal)
	 */
	public static void main(String[] args) {
		BigDecimal su1 = new BigDecimal("1");
		BigDecimal su2 = new BigDecimal("4");
		BigDecimal su3 = null;
		
		// 加算
		su3 = su1.add(su2);
		System.out.println("加算:" + su3.toString());

		// 減算
		su3 = su1.subtract(su2);
		System.out.println("減算:" + su3.toString());

		// 乗算
		su3 = su1.multiply(su2);
		System.out.println("乗算:" + su3.toString());

		// 除算:少数が1桁になるように四捨五入
		su3 = su1.divide(su2, 1,BigDecimal.ROUND_HALF_UP);
		System.out.println("除算(四捨五入):" + su3.toString());
		
		// 除算:少数が1桁になるように切捨て
		su3 = su1.divide(su2, 1,BigDecimal.ROUND_HALF_DOWN);
		System.out.println("除算(切捨て):" + su3.toString());
	}
}
実行結果
加算:5
減算:-3
乗算:4
除算(四捨五入):0.3
除算(切捨て):0.2

BigDecimalの比較のサンプルソース

BigDecimal su1 = new BigDecimal("1");
BigDecimal su2 = new BigDecimal("4");

if(su1.compareTo(su2) < 0) {
	// ここが処理されます。
}

inserted by FC2 system