I have two JTextFields txf1 and txf2.
In both of them I input the same content (for example: "test").
I made and If statement:
if (txf1.getText() == txf2.getText()) {
System.out.println("Equal");
} else {
System.out.println("Error");
}
Why it prints out the error message? I even made a System.out.println(txf1.getText())
and System.out.println(txf2.getText())
and the same looks equal, but prints out the error message?
String comparison in Java is done using String#equals
, using ==
means you are comparing the memory reference of the objects, which won't always return true
when you think it should.
Try something more like....
if (txf1.getText().equals(txf2.getText())) {
...instead