String中intern()方法

intren方法:通俗的講,是將字符串放入常量池中。java

new出來的字符串是放在堆中,直接賦值的字符串是放在常量池中的。blog

對字符串作拼接操做,即作「+」運算,分兩種狀況字符串

(1)表達式右邊是純字符串常量,則存放在常量池中class

(2)表達式右邊存在字符串引用,則存放在堆中test

  

public class test {
	public static void main(String[] args) {
		String s1="aaa";
		String s2="bbb";
		String s3="aaabbb";
		String s4=s1+s2;
		String s5="aaa"+"bbb";
		String s6=new String("aaabbb");
		System.out.println(s3==s4);
		System.out.println(s3==s4.intern());
		System.out.println(s3==s5);
		System.out.println(s3==s6);
		System.out.println(s3==s6.intern());
	}
}

  結果以下:引用

false
true
true
false
true

  

  說明:s1,s2,s3,s5均存放在常量池中,s4,s6存放在堆中。方法

相關文章
相關標籤/搜索