Java——取整与四舍五入

一.Java取整方法

1.强制类型转换

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

注意:

使用强制类型转化成整型时,直接去掉小数点后的数,会忽略掉小数的精度。

2.Java三个取整函数

1).Math.ceil(double num);

2).Math.floor(double num);

public class Main { public static void main(String[] args){ System.out.println("正数:Math.ceil(9.12) = " + Math.ceil(9.12)); System.out.println("负数:Math.ceil(-9.12) = " + Math.ceil(-9.12)); System.out.println("---------------------------------"); System.out.println("正数:Math.floor(9.12) = " + Math.floor(9.12)); System.out.println("负数:Math.floor(-9.12) = " + Math.floor(-9.12)); } }

Math.ceil(double num)函数,取浮点数的天花板。即大于浮点数的最小整数

Math.floor(double num)函数,取浮点数的地板。即小于浮点数的最大整数

3).Math.round(double num);

public class Main { public static void main(String[] args){ System.out.println("小数点后第一位>5"); System.out.println("正数:Math.round(10.68) = " + Math.round(10.68)); System.out.println("负数:Math.round(-10.68) = " + Math.round(-10.68)); System.out.println(); System.out.println("小数点后第一位=5"); System.out.println("正数:Math.round(10.5) = " + Math.round(10.5)); System.out.println("负数:Math.round(-10.5) = " + Math.round(-10.5)); System.out.println(); System.out.println("小数点后第一位<5"); System.out.println("正数:Math.round(10.46) = " + Math.round(10.46)); System.out.println("负数:Math.round(-10.46) = " + Math.round(-10.46)); System.out.println(); } }

大于五正负加,等于五正数加,小于五全部加;

二.Java四舍五入方法

1.使用String.format对象

public class test { public static void main(String[] args) { double d = 10.2345; String result = String.format("%.2f",d); System.out.println(result); } }

输出为:10.235

2.使用NumberFormat对象

import java.text.NumberFormat; public class test { public static void main(String[] args) { double d = 10.2345; NumberFormat nf = NumberFormat.getInstance(); nf.setMaximumFractionDigits(2); String s = nf.format(d); System.out.println("s1="+s); nf.setMaximumFractionDigits(3); s = nf.format(d); System.out.println("s2="+s); } }

输出结果:

s1=10.23 s2=10.235

3.使用BigDecimal对象

经验分享 程序员 微信小程序 职场和发展