double转int

double s = 5.0;

int s1 = (int)s;

这个是可以的。
为什么下面这个不可以呢?
Double a=java.lang.Math.random()*20;
int b=(int)a;
在这里就会提示double不能转为int,为什么呢?

1个回答

前者是double到int的转换,都是基本类型,后者是包装类型Double转换成基本类型int,当然就不行了啊,如果把后面的Double改成double,那肯定就行了。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!