📅  最后修改于: 2023-12-03 15:24:32.406000             🧑  作者: Mango
在Java中,将double更改为int需要进行类型转换。但是需要注意的是,转换过程会将小数部分截断,可能会导致数据精度的损失。
使用强制类型转换将double类型强制转换为int类型。使用此方法需要注意四舍五入的问题。
double d = 3.14;
int i = (int) d;
Java中Math类提供了几个取整函数:floor、ceil、round。对于double类型,floor函数向下取整,ceil函数向上取整,而round函数四舍五入。
double d = 3.14;
int i = (int) Math.floor(d); //向下取整
double d = 3.14;
int i = (int) Math.ceil(d); //向上取整
double d = 3.14;
int i = (int) Math.round(d); //四舍五入
public class DoubleToIntDemo {
public static void main(String[] args) {
double d = 3.14;
int i1 = (int) d;
int i2 = (int) Math.floor(d);
int i3 = (int) Math.ceil(d);
int i4 = (int) Math.round(d);
System.out.println("将double " + d + " 转换为int类型的结果为:");
System.out.println("强制转换:" + i1);
System.out.println("向下取整:" + i2);
System.out.println("向上取整:" + i3);
System.out.println("四舍五入:" + i4);
}
}
以上程序输出结果为:
将double 3.14 转换为int类型的结果为:
强制转换:3
向下取整:3
向上取整:4
四舍五入:3