Thursday Code Puzzler: String Intern Puzzle in Java 7 and 6
The following program
String te = "te", st = "st"; // "test".length(); String username = te + st; username.intern(); System.out.println("String object the same is: " + (username == "test"));
prints under Java 7 update 7.
String object the same is: true
but uncomment the "test".length(); line, or run with Java 6 and it prints
String object the same is: false
Can you work out why?
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)