所以我对Java相当陌生,我正在尝试运行一个程序,该程序将显示名称中的一定数量的字母并要求用户做出回应。用户的响应应该确定两个答案之一(“正确”或“对不起,那是不正确的”)。我遇到的问题是,当我运行程序并输入应该导致“正确”的答案时,即“比利乔尔”,我得到的响应是“对不起,这是不正确的”。我实际上不确定发生了什么,但是当我输入应该导致系统说“正确”的内容时,这里有一个指向 CMD 图片的链接,而是说“对不起,那是不正确的”:
这是相关代码的副本:
System.out.println("\nLet's play Guess the Celebrity Name.");
String s6 = "Billy Joel";
System.out.println("\n" + s6.substring(2, 7));
Scanner kbReader3 = new Scanner(System.in);
System.out
.print("\nPlease enter a guess for the name of the above celebrity: ");
String response = kbReader3.nextLine();
System.out.println("\nYou entered: \n" + response + "\n");
if ((response == "Billy Joel")) {
// Execute the code here if Billy Joel is entered
System.out.println("\nCorrect!");
} else {
// Execute the code here if Billy Joel is not entered
System.out.println("\nI'm sorry, that's incorrect. The right answer was Billy Joel.");
}
System.out.println("\nThank you for playing!");
在此之前,该程序还有更多功能,但我对此没有任何问题,而且都是正确的。我取出了比利乔尔的部分,其他一切都按照预期运行。只是上面的代码与它应该输出的内容和输出的内容有关,这就是问题所在。我想知道我的代码中是否遗漏了一些东西,或者我做错了什么,但无论我做了什么,我们都会非常感谢帮助。