String s = new String("abc")創建了幾個對象?
兩個,一個是new的堆對象,一個是常量池中的"abc"
String str1 = "hello"; //str1指向靜態區
String str2 = new String("hello"); //str2指向堆上的對象
String str3 = "hello";
String str4 = new String("hello");
System.out.println(str1.equals(str2)); //true
System.out.println(str2.equals(str4)); //true
System.out.println(str1 == str3); //true
System.out.println(str1 == str2); //false
System.out.println(str2 == str4); //false
System.out.println(str2 == "hello"); //false
str2 = str1;
System.out.println(str2 == "hello"); //true