我已经写了一些代码,这些代码应该从用户那里得到两个单词,如果它们匹配显示"你已经赢了"然而,即使它们匹配,它每次只显示"错误"(我的其他声明)。我试图找出为什么if语句没有检测到它们是否匹配。
import java.util.*;
class testing{
public static void main(String[] args){
Scanner in = new Scanner(System.in); //start scanner
System.out.println("Please enter word 1");
String userWord =in.nextLine();
System.out.println("Please enter word 2");
String userGuessInput = in.nextLine();
if(userWord == userGuessInput){
System.out.println("You have won!");
}
else{
System.out.println("error");
}
}
}
答案 0 :(得分:2)
使用equals()
比较字符串
if(userWord.equals(userGuessInput)){
System.out.println("You have won!");
}
else{
System.out.println("error");
}
equals()
比较变量的值和
==
测试参考相等性