遇到检索角色的问题

时间:2015-01-18 01:57:26

标签: java if-statement input

我正在努力制作一个可以给你“理想”体重的程序,并且认为我已经把它弄清楚了。但是,当我运行代码时没有任何反应。我认为这是因为它不适当地检索指标,如果它应该是公制或英制。

String name,heightString,unitString;         双倍高度;

    name = nameInput.getText();
    unitString = unitInput.getText();
    heightString = heightInput.getText();

    height = Double.parseDouble(heightString);

    if (unitString == "m")
    {
        outputLabel.setText(name + "'s ideal weight is" + (height * height * 25) + "kgs");
    }

    else if (unitString == "i")
    {
        outputLabel.setText(name + "'s ideal weight is" + (height * height * 25 / 703 + "lbs"));
    }

这就是我所拥有的,我很确定问题是我没有if语句的条件正确,但我无法找到我应该做的事情。

2 个答案:

答案 0 :(得分:2)

Java中的

使用.equals()代替==,如:

if (unitString.equals("m")) {..}

答案 1 :(得分:2)

这是Java吗?如果是这样,那么==将无法比较字符串。使用.equals()

name = nameInput.getText();
unitString = unitInput.getText();
heightString = heightInput.getText();

height = Double.parseDouble(heightString);

if ("m".equals(unitString))
{
    outputLabel.setText(name + "'s ideal weight is" + (height * height * 25) + "kgs");
}
else if ("i".equals(unitString))
{
    outputLabel.setText(name + "'s ideal weight is" + (height * height * 25 / 703 + "lbs"));
}

如果unitString是NullPointerException,首先放置字符串文字(“m”)以避免null