textarea.getText() ist nicht ordnungsgemäß in Java
Ich habe eine JTextArea, und ich bin versucht zu tun, ein blöder test mit textarea.getText()
if(textarea.getText() == "")
{
System.out.println("empty string");
}
Wenn ich dies tun ich bekomme gar nichts auf dem Bildschirm, selbst wenn ich die textarea leer ist oder ich etwas darin.
if(textarea.getText() != "")
{
System.out.println("empty string");
}
Aber wenn ich das mache erhalte ich die "leere string" message in allen Fällen.
Was ist hier das problem ?
und fügen Sie
da wissen Sie die Antwort wissen, Sie könnten, Lesen Sie diesem post
.trim()
zu verhindern, ohne WhiteSpace Chars
... stackoverflow.com/questions/6426201/java-order-of-or-comparisonda wissen Sie die Antwort wissen, Sie könnten, Lesen Sie diesem post
InformationsquelleAutor Wassim AZIRAR | 2011-07-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beim vergleichen von Zeichenfolgen, die Sie verwenden sollten
equals
statt==
:==
vergleichen Sie Referenzen, es wird nur funktionieren, falls es die exakt gleiche String-Instanz. Wenn Sie möchten, um zu überprüfen, ob der Inhalt der Zeichenfolge ist das gleiche, die Sie verwenden sollten equals-Methode.InformationsquelleAutor wjans
Ihrem code verwenden soll .equals() :
== vergleicht die Objekt-Referenz eher als das Objekt Wert
InformationsquelleAutor Mark Pope
Alternativ können Sie die isEmpty-Methode in diesem Fall:
InformationsquelleAutor Radium
Verwenden Sie bitte "".equals(textarea.getText()) anstelle der Referenz-Vergleich. Operator == vergleicht die Objektreferenzen.
InformationsquelleAutor 01es