Java Coder
How do I compare strings in Java?
2 Answer(s)      a year and 8 months ago
Posted in : Java Beginners

How do I compare strings in Java?

Advertisement
View Answers

December 23, 2013 at 6:11 PM




December 23, 2013 at 6:12 PM


// These two have the same value
new String("test").equals("test") ==> true 

// ... but they are not the same object
new String("test") == "test" ==> false 

// ... neither are these
new String("test") == new String("test") ==> false 

// ... but these are because literals are interned by 
// the compiler and thus refer to the same object
"test" == "test" ==> true 

// concatenation of string literals happens at compile time resulting in same objects
"test" == "te" + "st"  ==> true

// but .substring() is invoked at runtime, generating distinct objects
"test" == "!test".substring(1) ==> false