Java Math的floor、ceil、round方法

来源:互联网 发布:mac罗马数字怎么打 编辑:程序博客网 时间:2024/05/01 03:30

这几个方法都位于java.lang包下的Math类中,都为静态方法。

ceil方法:

static double ceil(double a)

返回值为double类型,返回的值大于或等于参数的double类型的值,并且等于某个整数(这么说总感觉怪怪的)

floor方法:

static double floor(double a)

返回值同样为double类型,返回的值为小于或等于参数的double类型的值,并且等于某个整数

round方法:

    //该方法为重载方法    static long round(double a)    static int round(float a)

返回最接近参数的整数,该方法等同于Math.floor(a + 0.5)并将结果转换为long或int类型

public class MathTest {    public static void main(String[] args) {        double[] nums = {-0.6, -1.5, -1, 0.5, 1.2, 1.8};        for(double n : nums) {            test(n);        }    }    public static void test(double a) {        System.out.println("Math.ceil(" + a + ")=" + Math.ceil(a));        System.out.println("Math.floor(" + a + ")=" + Math.floor(a));        System.out.println("Math.round(" + a + ")=" + Math.round(a));    }}

运行结果:

Math.ceil(-0.6)=-0.0
Math.floor(-0.6)=-1.0
Math.round(-0.6)=-1
Math.ceil(-1.5)=-1.0
Math.floor(-1.5)=-2.0
Math.round(-1.5)=-1
Math.ceil(-1.0)=-1.0
Math.floor(-1.0)=-1.0
Math.round(-1.0)=-1
Math.ceil(0.5)=1.0
Math.floor(0.5)=0.0
Math.round(0.5)=1
Math.ceil(1.2)=2.0
Math.floor(1.2)=1.0
Math.round(1.2)=1
Math.ceil(1.8)=2.0
Math.floor(1.8)=1.0
Math.round(1.8)=2

0 0