Java正在尝试if if语句不是真的

-1 java if-statement button void jtextfield

我正在尝试做一个程序,如果两个TextFields等于某个值会发生什么,我有两个if语句.当第一个if语句发生时,第二个if语句发生但我在代码中设置的值不匹配.为了更好地解释,这里是代码:

private void LevelUp(){
        float level = (float) Double.parseDouble(lvl.getText());
        float expmn = (float) Double.parseDouble(ExpMin.getText());
                    if(level == 1  && expmn == 500){
                    lvl.setText("2");
                    ExpMin.setText("501");
                    ExpMax.setText("1000");
                    JOptionPane.showMessageDialog(null,"" + "levevlup!" ,"Para Yok",JOptionPane.PLAIN_MESSAGE);
                    if(level == 2 && expmn == 1000); 
                        lvl.setText("3");
                        ExpMin.setText("1001");
                        ExpMax.setText("2500");

        }
        else{
            JOptionPane.showMessageDialog(null,"" + "leveladssadaup" ,"Para Yok",JOptionPane.PLAIN_MESSAGE);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Lok*_*oki 6

你不仅应该;在if-statement之后删除你在哪里寻找level2,但是如果我正确地查看你的代码,你应该关闭你的if语句,在你要求level2之前你找到level1,如果是level2则使用else.

如果出现以下情况,请在level2之后选择大括号:

    if(level == 1  && expmn == 500){
                lvl.setText("2");
                ExpMin.setText("501");
                ExpMax.setText("1000");
                JOptionPane.showMessageDialog(null,"" + "levevlup!" ,"Para Yok",JOptionPane.PLAIN_MESSAGE);
    }// <-- close level1 here because you want to check for a new level afterwards
    else if(level == 2 && expmn == 1000){ //<-- here was your ;, which was wrong
                    lvl.setText("3");
                    ExpMin.setText("1001");
                    ExpMax.setText("2500");

    }
    else{
        JOptionPane.showMessageDialog(null,"" + "leveladssadaup" ,"Para Yok",JOptionPane.PLAIN_MESSAGE);
    }
Run Code Online (Sandbox Code Playgroud)