java中如何取整?

Posted

tags:

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

java中有float类型的数据吗?如果是double型的该如何取整呢?

有float类型的

向上取整:Math.ceil() //只要有小数都+1
向下取整:Math.floor() //不取小数
四舍五入:Math.round() //四舍五入
参考技术A 有float,向上取整:Math.ceil() //只要有小数都+1
向下取整:Math.floor() //不取小数
四舍五入:Math.round() //四舍五入
参考技术B float类型的有,对doublejava.lang.Math.round方法就是四舍五入。
去尾法是java.lang.Math.floor
参考技术C

double a = 35;

double b = 20;

double c = a/b; //等于1.75

System.out.println(c);   //输出1.75

System.out.println(Math.ceil(c)); //向上取整输出2.0

System.out.println(Math.floor(c));  //向下取整输出1.0

System.out.println(Math.round(c));  //四舍五入取整输出2.0

参考技术D 可以仔细看看Math类 里面有很多方法

Java关于Math类的三个取整方法

0x01

  在java的Math类中有三个关于浮点数取整数的方法,分别是ceil (向上取整) floor(向下取整) round(四舍五入) 三个方法

0x02 ceil 向上取整,取整后总是比原来的数字大。

System.out.println(Math.ceil(2.34));
System.out.println(Math.ceil(-2.34));
3.0
-2.0

0x03 floor 向下取整 ,取整后总是比原来的数字小

System.out.println(Math.floor(2.34));
System.out.println(Math.floor(-2.34));
2.0
-3.0

0x04 round 四舍五入,最复杂的就是round,其算法是Math.floor(x+0.5),也就是先对原数据加0.5在向下取整

    System.out.println(Math.round(2.34));
    System.out.println(Math.round(2.65));
    System.out.println(Math.round(-2.5));
    System.out.println(Math.round(-2.49));
2
3
-2
-2

以上是关于java中如何取整?的主要内容,如果未能解决你的问题,请参考以下文章

在java中怎么对一个数字取整?

在java中怎么对一个数字取整

java中以25为单位向上、向下取整

matlab中小数如何取整?

java 按比例分配后得到小数,将小数取整,但不改变总数

java小数取整