Java 我试图在控制台中输入一行,并使用以下代码查看它是否等于字符串:
这是我的代码,用于查看控制台输入是否等于字符串Java 我试图在控制台中输入一行,并使用以下代码查看它是否等于字符串:,java,eclipse,console,Java,Eclipse,Console,这是我的代码,用于查看控制台输入是否等于字符串 boolean Cool1 = ask("rlrlrl"); public boolean ask(String a) { String b = scan.nextLine(); out("You put: " + b); if (b == a) { System.out.println("Good!"); return true; } else { System.out.println(
boolean Cool1 = ask("rlrlrl");
public boolean ask(String a) {
String b = scan.nextLine();
out("You put: " + b);
if (b == a) {
System.out.println("Good!");
return true;
} else {
System.out.println("Ugly");
return false;
}
}
这总是返回false。为什么?您应该使用.equals方法来比较字符串内容。==将仅检查对象的引用 在函数内部打印a,看看a是否真的等于b字符串比较使用a.equals(b)比a==b(它检查引用,而不是相等)效果更好