知識0からandroidアプリつくる

読者です 読者をやめる 読者になる 読者になる

知識0からAndroidアプリつくる

知識0からAndroidアプリ作ります

数値の四捨五入や切り捨て切り上げ

数値を指定した桁数で四捨五入したり、切り上げ、切り捨てをしたい場合は、
java.math.BigDecimalクラスを使用する。

 

    //元データ
double val = 42.195;

//元データをBigDecimal型にする
BigDecimal bd = new BigDecimal(val);

//四捨五入する
BigDecimal bd1 = bd.setScale(0, BigDecimal.ROUND_HALF_UP); //小数第1位
BigDecimal bd2 = bd.setScale(1, BigDecimal.ROUND_HALF_UP); //小数第2位

//切り捨てする
BigDecimal bd3 = bd.setScale(0, BigDecimal.ROUND_DOWN); //小数第1位
BigDecimal bd4 = bd.setScale(1, BigDecimal.ROUND_DOWN); //小数第2位

//切り上げする
BigDecimal bd5 = bd.setScale(0, BigDecimal.ROUND_UP); //小数第1位
BigDecimal bd6 = bd.setScale(1, BigDecimal.ROUND_UP); //小数第2位

  //画面表示
   System.out.println("四捨五入(小数第1位):" + bd1.doubleValue());
System.out.println("四捨五入(小数第2位):" + bd2.doubleValue());

System.out.println("切捨て(小数第1位):" + bd3.doubleValue());
System.out.println("切捨て(小数第2位):" + bd4.doubleValue());

System.out.println("切上げ(小数第1位):" + bd5.doubleValue());
System.out.println("切上げ(小数第2位):" + bd6.doubleValue());

 

intに変換したければintValue();を使う。

BigDecimal型のままでは扱えないので注意。