May*_*tap 7 java eclipse double int
我编写的代码转换double
为int
异常.
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Cannot cast from Double to int
Run Code Online (Sandbox Code Playgroud)
这是我的代码
Double d = 10.9;
int i = (int)(d);
Run Code Online (Sandbox Code Playgroud)
das*_*ght 10
Double
是原语之上的包装类double
.它可以转换为double
,但不能int
直接转换.
如果您使用double
而不是Double
,它将编译:
double d = 10.9;
int i = (int)(d);
Run Code Online (Sandbox Code Playgroud)
您还可以double
在中间添加一个强制转换,如下所示:
int i = (int)((double)d);
Run Code Online (Sandbox Code Playgroud)
那就是因为您不能混合拆箱(将您的内容转换Double
为double primitive
)和投射。尝试
int i = (int)(d.doubleValue());
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
13905 次 |
最近记录: |