取整方法
- Math.floor(double a) 向下取整
- Math.ceil(double a) 向上取整
- Math.round(double a) 四舍五入
+0.5向下取整 - Math.rint(double a) 就近取整
1.6接近2,所以就取2
1.4接近1,所以就取1
1.5跟1和2都很接近,这时候就取偶数 - (int) 类型强转
直接截取小数
测试示例
测试示例代码
public static void main(String[] args) {
double[] teArr = new double[]{1.4, 1.5, 1.6};
for (double t1 : teArr) {
System.out.println("==========================================================");
System.out.println("测试数据:" + t1);
// 向下取整
System.out.println("向下取整 " + Math.floor(t1));
// 向上取整
System.out.println("向上取整 " + Math.ceil(t1));
// 四舍五入或(+0.5向下取整)
System.out.println("四舍五入 " + Math.round(t1));
// 就近取整 如1.6接近2,所以就取2;1.4接近1,所以就取1;那么1.5呢,1.5跟1和2都很接近,这时候就取偶数
System.out.println("就近取整 " + Math.rint(t1));
// 类型强转 直接截取小数
System.out.println("类型强转 " + (int) t1);
}
}
示例返回结果
==========================================================
测试数据:1.4
向下取整 1.0
向上取整 2.0
四舍五入 1
就近取整 1.0
类型强转 1
==========================================================
测试数据:1.5
向下取整 1.0
向上取整 2.0
四舍五入 2
就近取整 2.0
类型强转 1
==========================================================
测试数据:1.6
向下取整 1.0
向上取整 2.0
四舍五入 2
就近取整 2.0
类型强转 1