0

这是我学习 Java 的第二天,我创建了一个简单的猜谜游戏,你必须尝试猜测“魔法单词”,但是每次我运行它时,当我输入正确的单词时,它总是会出现“错误! '。

任何帮助将不胜感激。

package textpac;
import javax.swing.JOptionPane;
public class textclass {

public static void main(String[] args) {
    String inputText = JOptionPane.showInputDialog("What is the magic word?");
    String outputText = null;
    if (inputText == "themagicword"){
        outputText = "Well done!";
    } 
    if (inputText != "themagicword"){
        outputText = "Wrong!";
    }
    JOptionPane.showMessageDialog(null, outputText);
}
}
4

1 回答 1

3

比较字符串时,使用.equals(...)方法而不是==运算符:

if (inputText.equals("subscribe")){
    outputText = "Well done!";
} 
if (!(inputText.equals("themagicword"))){
    outputText = "Wrong!";
}

问题是==比较一个字符串变量的引用或对象是否与另一个字符串变量的引用或对象完全相同,这不是您想知道的。相反,您想知道两个 String 对象是否以相同的顺序、相同的大小写共享相同的字母,为此,请使用该.equals(...)方法,或者.equalsIgnoreCase(...)大小写是否不重要。

于 2013-11-10T21:20:14.933 回答