为什么在NetBeans GUI中无法从if语句获得输出?

时间:2019-07-15 18:46:11

标签: java user-interface if-statement netbeans

我正在做一个作业,我必须创建一个“理想体重”计算器(有点像BMI计算器)。用户应输入他们希望接收其答案的身高,姓名和度量系统。

ie;度量系统=(公制)或(I)英制,其中用户输入了'm'或'i'。这意味着他们的身高输入必须与他们选择的单位相对应。

ie;高度= 1.5米或59英寸(除非他们不写单位,只写数字)。

我已尝试修复可能存在的任何语法错误,并且目前不再存在任何错误,但是,当我单击“计算”按钮时,我的GUI不会输出任何内容。我不确定这有什么问题。请帮我。这项总结性作业应于今晚进行,我无法成功完成它:((((

String strName, strSystem;
strName=this.jTextField1.getText();
strSystem=this.jTextField2.getText().toUpperCase();

if(strSystem.equals("M"))
{
    double height = Double.parseDouble(lblHeight.getText());
    double weight = height*height*25;
    this.lblOutput.setText(strName + "'s Ideal Weight is:" + weight + "Kg");
}
else if (strSystem.equals("I"))
{
    double height = Double.parseDouble(lblHeight.getText());
    double weight = (height*height*25)/703;
    this.lblOutput.setText(strName+ "'s Ideal Weight is:" + weight + "lb");
}
else
{
this.lblOutput.setText(strSystem);
}

GUI应该使用以下公式以在“度量系统”中选择的单位计算其“理想权重”。

* FORMULAS:

指标:体重(kg)=身高(米)×身高(米)×25

英制:重量(磅)=身高(英寸)×身高(英寸)×25÷703 *

GUI应该看起来像这样:

*名称:Eva

[[M] etric或(I)mperial]度量系统:M

高度[(M)英寸或(I)英寸]:1.5

输出:Eva的理想体重是___ kg。*

1 个答案:

答案 0 :(得分:0)

if-else if块中,您将lblOutput的文本设置为消息,但是在最后一行中,将其设置为{{1} },这可能会覆盖您之前设置的内容。尝试将其放在"" + strSystem块中:

else