有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java为什么这些字符串不匹配?

我得到的用户输入如下:

Scanner keyboard = new Scanner(System.in);
String input = keyboard.nextLine();

当我这样比较的时候

if(input == "abc"){
  System.out.println("Match!");
}else{
  System.out.println(input + "\nabc");
}

如果我输入“abc”,我知道了

abc
abc

而不是预期的match。发生什么事了


共 (2) 个答案

  1. # 1 楼答案

    ==正在比较内存位置。您需要使用输入。取而代之的是相等(“abc”)

  2. # 2 楼答案

    您正在比较String引用,而不是String值。改用String.equals方法