string name;
string nickname = 「」;
區別一
null :代表的是空物件。
解釋:它還沒有目標,不知道要指向誰?等同於 string name = null。除了可以操作判斷或賦值語句(== || = )外,不可以對其進行其他任何操作。例如 name.trim() 會丟擲空指標異常。
「」 :代表已經宣告了乙個物件的例項。
解釋:nickname 即已經是乙個string型別物件的例項了,它裡面儲存了乙個長度為0的空字串,已經有了一塊空字串的記憶體空間,可以對其進行字串的所有操作。比起name,它真是豐富多了。
應用:
string a ;
/**使用前會進行判斷,按照順序來判斷 a 是否被例項化,如果例項化後,則無需再進行判斷是否為""。再判斷是否*為空,
*如果沒有判斷 a == null 直接進行判斷 a == "" 有時會導致異常
*/if
(a == null || a =="")
java中 與null的區別
在專案中我們會經常遇到 與null的問題,那麼這兩者之間有什麼區別呢?1.從型別上分析 string s 這個代表的是空的字串,長度為0。string s null 這個null代表的是乙個物件,而這裡的s就相當於是對null這個物件的引用。2.從記憶體分配上看 string s 表示宣告乙個字串型...
mysql中null與 的區別
mysql中空字元和空值的區別,一直都知道mysql 中空字串 和空值 null 之間有區別,但是沒好好研究過。直到專案上,這兩個概念被我搞混了之後才想起來研究一下。根據網上的說法,空字串 是不占用空間,而空值 null 是占用空間。這裡我不太明白,因為我的理解是,字串都會有乙個結束符,這個結束符不...
mysql中NULL與 區別
在mysql中 空值 和 null 的概念 首先,我們要搞清楚 空值 和 null 的概念 1 空值是不占用空間的 2 mysql中的null其實是占用空間的 下面來分析下建立的語句 建立test表 create table test id int 10 unsigned not null auto...