具有equals比较的Java if语句始终求值为true

use*_*778 -2 java comparison integer if-statement equals

我对Java很新,每次尝试将输入与temp进行比较时,即使输入和temp不相同,我也会得到数组中的所有结果.

码:

if (jRadioButton1.isSelected()) 
{ 
    String temp; 
    try
    {
        for (int i = 0; i < 500; i++)
        { 
            temp = Integer.toString(Read.tempHigh[i]);

            if ( input.equals(temp) );
            {   
                j.TextArea3.append(temp);
                j.TextArea3.append(input);
            }
        }
    }
    catch (NumberFormatException e)
    {   
        jTextArea3.append("Please enter a number");
    }
}
Run Code Online (Sandbox Code Playgroud)

wat*_*ios 6

你的线......

if ( input.equals(temp) );
Run Code Online (Sandbox Code Playgroud)

不应该有;它的结尾.该;符号关闭if语句了,所以它会一直运行j.TextArea3.append()线不管是什么的价值inputtemp是.

因此,上面的代码应如下所示......

if (jRadioButton1.isSelected()){ 
    String temp; 
    try {
        for (int i = 0; i < 500; i++){ 
            temp = Integer.toString(Read.tempHigh[i]);

            if ( input.equals(temp) ) {   
                j.TextArea3.append(temp);
                j.TextArea3.append(input)
            }
        }
    }
    catch (NumberFormatException e){   
        jTextArea3.append("Please enter a number");
    }
}
Run Code Online (Sandbox Code Playgroud)