java.math.BigDecimalは、任意精度の符号付き十進数を表わすクラスである。値の変更はできない。
public class BigDecimal extends Number
BigDecimal は、任意精度の整数値と、小数点の右辺の小数点以下の桁数を表す負でない整数スケールで構成される (BigDecimal で表される数値は intVal/10**scale)。BigDecimals は、基本算術、スケール操作、比較、書式変換、およびハッシングの演算を提供する。
BigDecimal クラスは、まるめ動作に対しユーザー絶対制御を行い、精度を破棄できる演算 (除算と setScale) に対しユーザーに明示的にまるめ動作を指定させる。 8 つのまるめモード はこのために用意されているものである。 BigDecimal のスケール操作には、スケーリング/まるめ演算と小数点移動演算の 2 種類の演算がある。スケーリング/まるめ演算 (SetScale) は、値がオペランドの値とほぼ (またはちょうど)等しいがスケールは指定された値である BigDecimal を返す。この演算は、値に対するわずかな影響で数値の精度を上げたり下げたりする。小数点移動演算 (movePointLeft と movePointRight) は、指定した方向に指定した桁だけ小数点を移動することによりオペランドから生成される BigDecimal を返す。この演算は、精度に影響を与えることなく数値の値を変更する。
文字列からBigDecimalを生成する。
BigDecimal(String val)
int値からBigDecimalを生成する。
BigDecimal(int val)
long値からBigDecimalを生成する。
BigDecimal(long val)
double値からBigDecimalを生成する。
BigDecimal(double val)
メソッド | 説明 |
---|---|
toString | BigDecimalを文字列に変換する。 |
BigDecimal bd = new BigDecimal("123.45");
String s = bd.toString();