取整函数主要有三种:ceil()、floor()、round()
先来说说ceil()函数
ceil:在英文中,是天花板的意思,有向上的意思,所以,此函数是向上取整,它返回的是大于或等于函数参数,并且与之最接近的整数,在这里以java为例:
package com.test;public class CeilTest { private static final double[] TEST_DATA = {1, 1.3, 1.6, 0, -1, -1.3, -1.6 }; public static void main(String[] args) { for(double num : TEST_DATA){ test(num); } } public static void test(double num){ System.out.println(num+"的Math.ceil结果:"+Math.ceil(num)); }}运行的结果如下:
向上取整的时候,正数,则直接将当前整数加一;负数,则将整数后面的数据抹除;整数,则不变。
floor:在英文中,是地面,地板的意思,有下面的意思,所以,此函数是向下取整,它返回的是小于或等于函数参数,并且与之最接近的整数,在这里以java为例:
package com.test;public class CeilTest { private static final double[] TEST_DATA = {1, 1.3, 1.6, 0, -1, -1.3, -1.6 }; public static void main(String[] args) { for(double num : TEST_DATA){ test(num); } } public static void test(double num){// System.out.println(num+"的Math.ceil结果:"+Math.ceil(num)); System.out.println(num+"的Math.floor结果:"+Math.floor(num)); }}运行的结果如下:
向下取整的时候,正数,则取其整数部位,抹除小数部位;负数,则取其整数加一;整数,则不变
round:在英文中是有大约,环绕,在某某四周,附近的意思,所以,可以取其大约的意思,在函数中是四舍五入。在这里以java代码为例:
package com.test;public class CeilTest { private static final double[] TEST_DATA = {1, 1.3, 1.6, 0, -1, -1.3, -1.6 }; public static void main(String[] args) { for(double num : TEST_DATA){ test(num); } } public static void test(double num){// System.out.println(num+"的Math.ceil结果:"+Math.ceil(num));// System.out.println(num+"的Math.floor结果:"+Math.floor(num)); System.out.println(num+"的Math.round结果:"+Math.round(num)); }}运行结果如下:
四舍五入的时候,正数,小数位大于5,则整数位加一,小数位小于5,则整数位不变,抹除小数位;负数,小数位小于5,则整数位不变,抹除小数位,小数位大于5,则整数位加一;整数,则不变。
这三种函数的功能大概如上所述,其实这些函数的功能,可以按照方法的命名来区分,不必死记硬背。