例如:
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()
返回一个字符串,内容与此字符串相同,取自字符串常量池。