Java中的取整、四舍五入

目录

1、直接强制转换--取整

2、Java提供的函数

 参考文献


1、直接强制转换--取整

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

结果:

Java中的取整、四舍五入_第1张图片

  • 直接用强制转换的方式将浮点型数据转换为整型时,直接去掉小数点后部分的精度,取整数部分
  • 直接强制取整有精度风险
    • 一方面是小数位损失
    • 另一方面当浮点型数字超过整型数字最大值时,会发生溢出
    • 实际工程中,如果这两种因素都不会对工程产生影响,可以使用,否则不建议使用。

2、Java提供的函数

  • double Math.ceil(double num);
    • Math.ceil(double num);函数是取浮点数的天花板数,即不小于num的最小整数;
  • double Math.floor(double num);
    • Math.floor(double num)函数是取地板数,即不大于num的最大整数。
  • Math.round(double num);
    • 参数的小数点后第一位<5,运算结果为参数整数部分。
    • 参数的小数点后第一位>5,运算结果为参数整数部分绝对值+1,符号(即正负)不变。
    • 参数的小数点后第一位=5,正数运算结果为整数部分+1,负数运算结果为整数部分

 参考文献

[ 1 ] Java基础知识点笔记(一):java中的取整与四舍五入

你可能感兴趣的:(Java语法,java,算法,开发语言)