I came across below behavior from intern()
method , confused, any thoughts?
Case 1:
String test3=new String("hello");
test3.intern();
String test4=new String("hello");
test4.intern();
if(test3==test4){
System.out.println("same obj refered for test3 and test4 ");
}
else{
System.out.println("new obj created for test4");
}
Output:
new obj created for test4
Case 2:
String test3=new String("hello").intern();
//test3.intern();
String test4=new String("hello").intern();
//test4.intern();
if(test3==test4){
System.out.println("same obj referred for test3 and test4 ");
}
else{
System.out.println("new obj created for test4");
}
Output:
same obj referred for test3 and test4