String.equals vs == operator in Java
To do the string equal check the (==) operator could be misleading because (==) tests for reference equality (whether they are the same object or not). On the other hand .equals() tests for value equality (whether they are logically “equal” or not).
In case of .equals()
// These two have the same value new String("foo").equals("foo") // --> true
In case of (==)
// ... but they are not the same object new String("test") == "test" // --> false
// ... neither are these new String("test") == new String("test") // --> false