textarea.getText()在Java中无法正常工作

Was*_*RAR 2 java string swing actionlistener jtextarea

我有一个JTextArea,我正在尝试使用textarea.getText()进行一个愚蠢的测试

if(textarea.getText() == "")
{
    System.out.println("empty string");
}
Run Code Online (Sandbox Code Playgroud)

当我这样做时,即使我将textarea留空或者在其中键入内容,我也不会在屏幕上显示任何内容.

if(textarea.getText() != "")
{
    System.out.println("empty string");
}
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,我得到所有情况下的"空字符串"消息.

这有什么问题?

wja*_*ans 7

比较字符串时,您应该使用equals而不是==:

if("".equals(textarea.getText()))
{
   System.out.println("empty string");
}
Run Code Online (Sandbox Code Playgroud)

==将比较引用,它只会在它是完全相同的String实例的情况下工作.如果要检查String的内容是否相同,则应使用equals方法.