JAVA中double是浮点型的,double i = 1;为什么没有错误?

2025-01-20 01:08:31
推荐回答(5个)
回答1:

java里double的范围是最大的,所以把一个int数1付给double不会有问题,double形可以表示所有int数。反过来如果这样
int i=1.2 就会有问题,因为1.2是double型,有些double数int表示不了,会溢出,所以java不允许这样赋值。

回答2:

您好,提问者:
double、float默认是double,所以不需要写d,当然写上d也不算错。

回答3:

怎么会错呢?整型常量向上隐式转型。float i = 1f; double k = 1; long p = 1l;都可以的~

回答4:

double i = 1;
//i为整形,即int类型的,此句进行了自动类型的转换,没有造成精度损失,所以不会报错的

回答5:

从低精度到高精度转换是不报错的