コード:
import java.math.*;
public class x
{
public static void main(String[] args)
{
BigDecimal a = new BigDecimal(0.1);
BigDecimal b = new BigDecimal(0.7);
System.out.println(a);
System.out.println(b);
}
}
出力:
0.1000000000000000055511151231257827021181583404541015625
0.6999999999999999555910790149937383830547332763671875
double
これは、与えられた値に最も近いを見つけることができるので便利です。しかし、値は実際の値よりも0.1
大きく、値は小さくなります。0.7
10進数の両方の値(最も大きい値と最も小さい値)を取得するにはどうすればよいですか?
で始まりBigDecimal
、それを変換してdouble
から10進数に戻すと仮定します。値が大きくなったり小さくなったりします。どうすれば他のものを手に入れることができますか?