关于String中的intern()方法

时间:2014-05-22 20:45:56

标签: java string

String s1=new String("Raam");
String s2=s1.concat("Kumar");
String s3=s2.intern();
String s4="RaamKumar";
System.out.println("s3==s4..."+(s3==s4)); //true

intern()方法检查特定对象是否在String Constant池中退出。 Oterwise它将在String Constant池中创建该对象。但是字符串intern()的需要是什么。哪种情况有用?

1 个答案:

答案 0 :(得分:0)

几乎从来没用过。根据{{​​1}}类文档,String文字总是被实习。也就是说,如果我说

String

,单个对象将放在堆上,String a = "A String"; String b = "A String"; a都将指向相同的引用。

所以,我会说这是语法糖,使得对b的任何调用都不需要。