字串常量和字串變數
阿新 • • 發佈:2019-01-09
public class main {
public static void main(String[] args) {
String str1 = "abc";
String str2 = "abc";
String str3 = "ab" + "c";
String str4 = new String(str2);
String str5 = "ab";
String str6 = "c";
String str7 = str5 + str6;
//str1和str2引用自常量池裡的同一個string物件
System.out.println(str1 == str2);
//str3通過編譯優化,與str1引用自同一個物件
System.out.println(str1 == str3);
//str4因為是在堆中重新分配的另一個物件,所以它的引用與str1不同
System.out.println(str1 == str4);
//str3無法編譯優化,重新分配的另一個物件
System.out.println(str1 == str7);
}
}