java中四舍五入

Posted anpeiyong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中四舍五入相关的知识,希望对你有一定的参考价值。

1、BigDecimal  

import java.math.BigDecimal;
import static java.math.BigDecimal.ROUND_HALF_DOWN;

public class Test {

    public static void main(String[] args) {

        BigDecimal a = new BigDecimal(11);
        BigDecimal b = new BigDecimal(3);

        BigDecimal divide = a.divide(b, 0, ROUND_HALF_DOWN);
        System.out.println(divide.longValue());

    }
}


//结果:4

 2、Math

float a = 1.6f;

        double b = 2.7d;

        double c = 3.72;

        int round = Math.round(a);
        System.out.println(round);// 2

        long round1 = Math.round(b);
        System.out.println(round1);// 3

        long round2 = Math.round(c);
        System.out.println(round2);// 4


        /**
         * float 必须显式标明f,不然编译器认为是double
         *
         * double 无需显式标明d,编译器默认 会加d
         *
         *          0: ldc           #2                  // float 1.6f
         *          2: fstore_1
         *          3: ldc2_w        #3                  // double 2.7d
         *          6: dstore_2
         *          7: ldc2_w        #5                  // double 3.12d
         *
         */

 

以上是关于java中四舍五入的主要内容,如果未能解决你的问题,请参考以下文章

怎样用java实现小数的四舍五入?

在Java语言中四舍五入,使其与C#匹配

Java 对任意数字进行四舍五入

JAVA正确的四舍五入方法

如何在片段中使用 GetJsonFromUrlTask​​.java

java中小数怎么四舍五入?