java实现数据四舍五入

2023-05-31  本文已影响0人  忘了呼吸的那只猫

这种方法可以用float,double接收数据类型,可以四舍五入保留两位小数,但是小数点第二位是0的话会不显示。以下代码用到此方法的语句:

public class Main {
    public static void main(String[] args) {
        double x = 2.585;
        x = Double.parseDouble(String.format("%.2f",x));
        System.out.println(x);
    }
}
import java.math.RoundingMode;
import java.text.DecimalFormat;

public class Main {
    public static void main(String[] args) {
        double x = 2.585;
        DecimalFormat df = new DecimalFormat("#.#"); //不省略0用:0.00
        df.setRoundingMode(RoundingMode.HALF_UP);
        String z = df.format(x);
        System.out.println(z);
    }
}

注意:此种方式只能四舍五入小数点后一位,两位以上,会默认使用HALF_EVEN模式,尾数是5时向偶数位舍入

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

public class Main {
    public static void main(String[] args) {
        double x = 2.5555555;
        BigDecimal bd = new BigDecimal(String.valueOf(x));
        String z = String.valueOf(bd.setScale(3, RoundingMode.HALF_UP));
        System.out.println(z);
    }
}
上一篇 下一篇

猜你喜欢

热点阅读