我想问一下,我的属性写的double,我记得我以前是可以传一个int类型的值的,为啥现在不行了。

img

img


我想问一下,我的属性写的double,我记得我以前是可以传一个int类型的值的,为啥现在不行了。

300d

换成300.0

你用的是Double包装类,原始类型int 不兼容 Double包装类。

如果你改把字段或者构造函数改成写double原始类型,就是可以的

【以下回答由 GPT 生成】

问题解答:

Java是一种强类型语言,不同类型的数据不能直接进行赋值。虽然int类型可以自动转换为double类型,但是在赋值时还是会出现编译错误。要解决这个问题,可以使用类型转换来将int类型的值转换为double类型。

具体解决方案如下:

int intValue = 10;  // 定义一个int类型的变量
double doubleValue = (double) intValue;  // 将int类型的值转换为double类型

System.out.println(doubleValue);  // 打印转换后的double值

在上述代码中,我们首先定义了一个int类型的变量intValue,然后将它通过类型转换赋值给了一个double类型的变量doubleValue。最后使用System.out.println()方法打印出转换后的double值。

这样,你就可以将一个int类型的值赋给一个double类型的属性了。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^