tech.chakapoko.com
Home / Java / 数値

[Java]BigDecimalで四捨五入を行う

BigDecimalで四捨五入を行うには BigDecimal#setScale を使います。

setScale の第一引数には少数第何位で四捨五入したいかを指定します。例えば少数第一位を四捨五入して整数部分だけを残したければ0を、少数第二位を四捨五入したければ1を指定します。

第二引数には BigDecimal.ROUND_HALF_UP を指定します。

package com.example;

import java.math.BigDecimal;

public class Example {

    public static void main(String[] args) {
        BigDecimal bigDecimal1 = new BigDecimal("123.4");
        System.out.println(bigDecimal1);                                       // => 123.4
        System.out.println(bigDecimal1.setScale(0, BigDecimal.ROUND_HALF_UP)); // => 123

        BigDecimal bigDecimal2 = new BigDecimal("1234.5");
        System.out.println(bigDecimal2);                                       // => 1234.5
        System.out.println(bigDecimal2.setScale(0, BigDecimal.ROUND_HALF_UP)); // => 1235
    }

}