gpt4 book ai didi

java - JPanel.setBounds(xx,xx,variable,xx) 不起作用。为什么?

转载 作者:行者123 更新时间:2023-12-01 11:03:34 25 4
gpt4 key购买 nike

public void colortemperatureJSliderStateChanged(ChangeEvent event) {
fahrenheitdegree = colortemperatureJSlider.getValue();
fahrenheitJPanel.setBounds(100,270, fahrenheitdegree, 20);

celsiusdegree = (fahrenheitdegree - 32.0)*5.0/9.0;
celsiusJPanel.setBounds(100,220,celsiusdegree, 20);
}// end of public void colortemperatureJSliderStateChanged..

我的教授想要两个变量(摄氏度和华氏度)作为 double 我将摄氏度的声明设置为双倍;和华氏度;

不知何故,编译在 JPanel.setBounds(xxx,xxx, variable, xx); 的两行上发现了两个错误;因为它是“不兼容的类型:可能从 double 到 int 的有损转换。”

当我尝试将变量更改为 int 时。错误在于摄氏度的公式无法识别 int。那么如何让它适用于双变量呢?

最佳答案

要使其适用于 double,您应该将变量保留为 double,并告诉编译器无论如何执行有损对话。

所以:

celsiusJPanel.setBounds(100, 220, (int) celsiusdegree, 20);

应该可以正常工作。

更多信息可以在"Why can int/byte/short/long be converted to float/double without typecasting but vice-versa not possible"中找到,以及relevant section of the JLS

关于java - JPanel.setBounds(xx,xx,variable,xx) 不起作用。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33149770/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com