例如:
public class Test {
public static void main(String args[]) {
String cjavapy = new String("www.cjavapy.com");
String j = new String("JAVA");
System.out.println(cjavapy.intern());
System.out.println(j.intern());
String str1 = "a";
String str2 = "b";
String str3 = "ab";
String str4 = str1 + str2;
String str5 = new String("ab");
System.out.println(str5.equals(str3));
System.out.println(str5 == str3);
System.out.println(str5.intern() == str3);
System.out.println(str5.intern() == str4);
}
}
1、定义和用法
intern()
是一个Native方法,它的作用是:如果字符常量池中已经包含一个等于此String对象的字符串,则返回常量池中字符串的引用,否则,将新的字符串放入常量池,并返回新字符串的引用’
它遵循以下规则:对于任意两个字符串 s 和 t,当且仅当 s.equals(t)
为 true 时,s.intern() == t.intern()
才为 true。
2、调用语法
String intern()
3、返回值
intern()
返回一个字符串,内容与此字符串相同,取自字符串常量池。