java - 对象比较 : Address vs Content

标签 java

嘿伙计们,我只是在胡闹,我无法让它工作:

public static void main(String[] args){
    Scanner input = new Scanner (System.in);
    String x = "hey";
    System.out.println("What is x?:  ");
    x = input.nextLine();
    System.out.println(x);
    if (x == "hello")
        System.out.println("hello");
    else
        System.out.println("goodbye");
}

如果你输入 hello,它当然应该打印 hello hello 但它不会。我使用 Eclipse 只是为了搞乱。请快速帮助

最佳答案

应该是 if (x.equals("hello"))

对于java对象,==用于引用比较。 .equals() 用于值比较。

关于java - 对象比较 : Address vs Content,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7006399/

相关文章:

java - 使用 JavaFX 制作 Eclipse 插件?

java - Currency.getSymbol() 使用不同的设备给出 "US$"和 "$"

java - 如何使用 FileReader 引用我的原始 txt 文件?

Java 执行 'catch' block 没有错误,但不知何故仍然运行 'try' block

java - 将 java 方法引用分配给接口(interface)

java - java中如何打印多个int

java - 与 netbeans jframes 链接的数据库

java - 在 Eclipse E4 中始终显示零件堆栈

java - Selenium:在没有直接链接、没有 Windows 窗体、没有 AutoIt 或 Robot 的情况下,将 Internet Explorer 中的文件下载到指定文件夹

java - 防止IE缓存