📅  最后修改于: 2020-09-26 05:43:26             🧑  作者: Mango
java 字符串 intern()方法返回被插入的字符串。它返回字符串的规范表示形式。
如果它是由new关键字创建的,则可用于从内存返回字符串 。它在字符串常量池中创建堆字符串对象的精确副本。
interned方法的签名如下:
public String intern()
interned字符串
public class InternExample{
public static void main(String args[]){
String s1=new String(hello);
String s2=hello;
String s3=s1.intern();//returns string from pool, now it will be same as s2
System.out.println(s1==s2);//false because reference variables are pointing to different instance
System.out.println(s2==s3);//true because reference variables are pointing to same instance
}}
false
true
让我们再看一个例子来了解字符串interned的概念。
public class InternExample2 {
public static void main(String[] args) {
String s1 = Javatpoint;
String s2 = s1.intern();
String s3 = new String(Javatpoint);
String s4 = s3.intern();
System.out.println(s1==s2); // True
System.out.println(s1==s3); // False
System.out.println(s1==s4); // True
System.out.println(s2==s3); // False
System.out.println(s2==s4); // True
System.out.println(s3==s4); // False
}
}
true
false
true
false
true
false