1.你可以使用==或者!=操作來比較null值谴仙,但是不能使用其他算法或者邏輯操作。
2.null是Java中的關鍵字,它不屬于任何類型,只是一種特殊的值,不是對象。看下面的例子篡悟,看結果之前大家看下會輸出什么?
若執(zhí)行main方法會得到什么呢匾寝?
這里我們看第二條,null是一種特殊的值荷腊,不是對象艳悔;所以這里會調用method(String s),打印出null女仰;這里String 換成其他任意類型對象都是一樣的答案猜年。
3.null是所有引用類型的默認值。
4.null可以被轉化為任何類型,輸出null不會拋出任何異常疾忍。
5.null可以被轉化為任何類型,所以可以調用靜態(tài)方法(當然我們一般不會這么去調用)乔外;但是不能調用非靜態(tài)方法,會拋出空指針異常
6.null被強轉化任何類型后,它還僅僅是一個特殊值,并不屬于任何類型一罩。也就是我們String? s=(String)null; null instanceof String還是返回false杨幼。
7."用String轉換后的null可以進行字符串運算,這是因為字符串進行連接的時候,編譯器對null進行了特別的優(yōu)化,其實就是實例化StringBuilder,在調用append()方法時對null的一個特別處理,當為null時,轉化為“null”,最后調用toString()返回一個String對象。
8.用八大基本類型轉換后的null,不可以進行基本類型的運算,否則會出現(xiàn)編譯或者運行錯誤。
本文來源:https://www.cnblogs.com/greatfish/p/5906617.html