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 次 |
| 最近记录: |