可能这是一个愚蠢的问题.我想摆脱数字的小数部分Double.但我不能这样做.它显示了不兼容类型的错误.该怎么办?
Double to int 转换成一行....请帮助谢谢
cru*_*sam 182
如果你真的应该使用Double而不是double,你甚至可以通过调用获得int的值:
Double d = new Double(1.23);
int i = d.intValue();
Run Code Online (Sandbox Code Playgroud)
其他已经由Peter Lawreys回答的描述.
gip*_*ani 26
所有其他答案都是正确的,但请记住,如果你将double转换为int,你将丢失十进制值..所以2.9 double变为2 int.
你可以使用Math.round(double)函数或只是做:
(int)(yourDoubleValue + 0.5d)
Run Code Online (Sandbox Code Playgroud)
小智 24
double myDb = 12.3;
int myInt = (int) myDb;
Run Code Online (Sandbox Code Playgroud)
结果是:myInt = 12