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