重複の可能性:
Java6とJava7で異なる動作をするintern()
このブログで私は面白い文字列パズルを見つけました:
- - 引用 - -
String te = "te", st = "st";
//"test".length();
String username = te + st;
username.intern();
System.out.println("String object the same is: "
+ (username == "test"));
Java 7update7で印刷します。
String object the same is: true
ただし、「test」.length();のコメントを解除します。行、またはJava 6で実行すると、印刷されます
String object the same is: false
--- EoQ ---
正直なところ、出力が異なる理由がわかりません。そのような行動の原因を教えてください。