1
我已經在eclipse寫的代碼:Object的相等(對象referece 「==」)
String[] s = {"a","b"};
String d = "a";
System.out.println(s[0]==d);
和它給 「真」 作爲輸出。
「==」檢查對象引用,如果兩個對象都引用同一個對象,但在這種情況下,對象「d」指向不同的對象和「s [0]」不同,那麼它們如何相等。
我已經在eclipse寫的代碼:Object的相等(對象referece 「==」)
String[] s = {"a","b"};
String d = "a";
System.out.println(s[0]==d);
和它給 「真」 作爲輸出。
「==」檢查對象引用,如果兩個對象都引用同一個對象,但在這種情況下,對象「d」指向不同的對象和「s [0]」不同,那麼它們如何相等。
"a"
將在JVM使用的字符串池中創建。
作爲優化,只有該字符串的一個實例將被創建。 Java可以做到這一點,因爲字符串是不可變的。這就是爲什麼引用引用相同的底層對象,所以在這個特定的實例中,引用比較相等。
請求之前做一些家務。 – SMA
@almasshaikh正在尋找答案沒有評論。 –
答案在於評論。如果你可以用google搜索,你會得到上面的鏈接,這就是爲什麼你的問題被標記爲重複。 – SMA