Java——取整与四舍五入

2年前 (2022) 程序员胖胖胖虎阿
181 0 0

一.Java取整方法

1.强制类型转换

public class Main {
    public static void main(String[] args){
        System.out.println("正数:(9.12) = " + (int)9.12);
        System.out.println("负数:(-9.12) = " + (int)-9.12);
    }
}

Java——取整与四舍五入

注意:

使用强制类型转化成整型时,直接去掉小数点后的数,会忽略掉小数的精度。

2.Java三个取整函数

1).Math.ceil(double num);

2).Math.floor(double num);

public class Main {
    public static void main(String[] args){
        System.out.println("正数:Math.ceil(9.12) = " + Math.ceil(9.12));
        System.out.println("负数:Math.ceil(-9.12) = " + Math.ceil(-9.12));
        System.out.println("---------------------------------");
        System.out.println("正数:Math.floor(9.12) = " + Math.floor(9.12));
        System.out.println("负数:Math.floor(-9.12) = " + Math.floor(-9.12));

    }
}

Java——取整与四舍五入

 Math.ceil(double num)函数,取浮点数的天花板。即大于浮点数的最小整数

 Math.floor(double num)函数,取浮点数的地板。即小于浮点数的最大整数

3).Math.round(double num);

public class Main {
    public static void main(String[] args){
        System.out.println("小数点后第一位>5");
        System.out.println("正数:Math.round(10.68) = " + Math.round(10.68));
        System.out.println("负数:Math.round(-10.68) = " + Math.round(-10.68));
        System.out.println();

        System.out.println("小数点后第一位=5");
        System.out.println("正数:Math.round(10.5) = " + Math.round(10.5));
        System.out.println("负数:Math.round(-10.5) = " + Math.round(-10.5));
        System.out.println();

        System.out.println("小数点后第一位<5");
        System.out.println("正数:Math.round(10.46) = " + Math.round(10.46));
        System.out.println("负数:Math.round(-10.46) = " + Math.round(-10.46));
        System.out.println();
        
    }
}

大于五正负加,等于五正数加,小于五全部加;

二.Java四舍五入方法

1.使用String.format对象

public class test {
    public static void main(String[] args) {
        double d = 10.2345;
        String result = String.format("%.2f",d);
        System.out.println(result);
    }
}

输出为:10.235

2.使用NumberFormat对象

import java.text.NumberFormat;

public class test {
    public static void main(String[] args) {
        double d = 10.2345;
        NumberFormat nf = NumberFormat.getInstance();
        nf.setMaximumFractionDigits(2);
        String s = nf.format(d);
        System.out.println("s1="+s);

        nf.setMaximumFractionDigits(3);
        s = nf.format(d);
        System.out.println("s2="+s);
    }
}

输出结果:

s1=10.23
s2=10.235

3.使用BigDecimal对象

版权声明:程序员胖胖胖虎阿 发表于 2022年9月16日 上午6:56。
转载请注明:Java——取整与四舍五入 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...