如何直接将Double转换为int?
可能是这个愚蠢的问题。 我想摆脱Double
数的小数部分。 但我不能这样做。 它显示了不兼容types的错误。 该怎么办?
Double to int
转换在一行….请帮助谢谢
如果你真的应该使用Double而不是double,你甚至可以通过调用来获得Double的int值:
Double d = new Double(1.23); int i = d.intValue();
否则已经由Peter Lawreys所描述的答案了。
所有其他的答案是正确的,但要记住,如果你把double赋给int,你将会丢失十进制值。所以2.9 double变成2 int。
你可以使用Math.round(double)
函数或简单地做:
(int)(yourDoubleValue + 0.5d)
double myDb = 12.3; int myInt = (int) myDb;
结果是:myInt = 12
尝试铸造的价值
double d = 1.2345; long l = (long) d;
int average_in_int = ( (Double) Math.ceil( sum/count ) ).intValue();