在項目中我們會經常遇到"“與null的問題,那麼這兩者之間有什麼區別呢?
1.從類型上分析:
String s = “”;這個代表的是空的字符串,長度爲0。
String s = null;這個null代表的是一個對象,而這裏的s就相當於是對null這個對象的引用。
2.從內存分配上看:
String s = “”;表示聲明一個字符串類型的引用,其值爲”"空字符串,這個str引用指向的是空字符串的內存空間;
String s = null;表示聲明一個字符串對象的引用,但指向爲null,也就是說還沒有指向任何的內存空間;
組後說明:創建一個字符串對象的默認值爲""(String s = new String()),即
String s = new String();
String s1 = “”;
s.equals(s1);返回true