有办法将java.lang.Double转换为java.lang.Integer吗?
它会抛出一个异常
" . lang。ClassCastException: java.lang.Double不兼容java.lang.Integer"
有办法将java.lang.Double转换为java.lang.Integer吗?
它会抛出一个异常
" . lang。ClassCastException: java.lang.Double不兼容java.lang.Integer"
当前回答
是这样的:
Double foo = 123.456;
Integer bar = foo.intValue();
其他回答
首先你应该用双份而不是双份。
例子
int intResult = newDoubleObj.intValue();
简单地这样做…
Double d = 13.5578;
int i = d.intValue();
System.out.println(i);
Double和Integer分别是Double和int的Java原语的包装类。你可以在它们之间进行类型转换,但是你会失去浮点数。也就是说,将5.4转换为int类型将是5。如果你将它向后转换,它将是5.0。
这对我很有效。试试这个:
double od = Double.parseDouble("1.15");
int oi = (int) od;
你需要使用方法intValue()像这样显式地获取int值:
Double d = 5.25;
Integer i = d.intValue(); // i becomes 5
Or
double d = 5.25;
int i = (int) d;