java - Double 未转换为 int

标签 java eclipse int double

我编写的这段代码将 double 转换为 int 出现异常。

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
Cannot cast from Double to int

这是我的代码

Double d = 10.9;    
int i = (int)(d);

最佳答案

Double 是原始 double 之上的包装器 类。它可以转换为double,但不能直接转换为int

如果您使用 double 而不是 Double,它将编译:

double d = 10.9;    
int i = (int)(d); 

你也可以在中间加一个double的转换,像这样:

int i = (int)((double)d); 

关于java - Double 未转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14088522/

相关文章:

java - 登录 Spring security 后保留相同的 URL

java - 虚拟 SD 卡出现问题

mysql - 正在初始化 c3p0 池...超时

eclipse - CVS 历史中的 Author 列从 Eclipse 中消失了

java - 在其 for 循环之外访问整数

java - 需要 int 但有问题并发现零字节

c# - 当输入为 0 时停止取值

java - 如何在java中打乱链表

java - Joda DateTime 中 01.04.1893 的奇数结果

java - Eclipse:导出要在较旧的 JRE 上执行的可运行 JAR 文件