Java RoundingMode.UPで小数点以下の切り上げのサンプル

環境
JavaSE 11
Eclipse 4.26.0

構文
double 変数1 =値;
BigDecimal 変数2 = new BigDecimal(String.valueOf(変数1));
double型の数値をStringクラスのvalueOfメソッドで文字列に変換し、それをBigDecimalクラスのコンストラクタの引数としてBigDecimal型にしています。
変数2.setScale(0, RoundingMode.UP);
setScaleメソッドの引数の0は小数第一位を指し、RoundingMode.UPは切り上げします。

使用例

package com.arkgame.study;

import java.math.BigDecimal;
import java.math.RoundingMode;

public class DemoTest {

      public static void main(String[] args) {
            double dt = 14.2627;
            // double型の数値をStringクラスのvalueOfメソッドで文字列に変換
            BigDecimal res = new BigDecimal(String.valueOf(dt));

            // 小数第一位を切り上げ
            BigDecimal result = res.setScale(0, RoundingMode.UP);
            // BigDecimal型をString型にして返す
            System.out.println("BigDecimal型をString型にして返す結果: " + result.toPlainString());
            // BigDecimal型をdouble型にして返す
            System.out.println("BigDecimal型をdouble型にして返す結果: " + result.doubleValue());

      }
}

実行結果
BigDecimal型をString型にして返す結果: 15
BigDecimal型をdouble型にして返す結果:15.0

Java

Posted by arkgame