java中null是什麼,以及使用中要注意的事項,javanull

來源:互聯網
上載者:User

java中null是什麼,以及使用中要注意的事項,javanull

1.null既不是對象也不是一種類型,它僅是一種特殊的值,你可以將其賦予任何參考型別,你也可以將null轉化成任何類型,例如:

Integer i=null;
Float f=null;
String s=null;

但是不能把null賦值給基本類型,如int ,float,double等

int k=null ----------編譯器會報錯cannot convert from null to int

2. null是關鍵字,像public、static、final。它是大小寫敏感的,你不能將null寫成Null或NULL,否則編譯器會報錯  3.包含null值的封裝類在Java拆箱產生基礎資料型別 (Elementary Data Type)時候都會拋出一個null 指標異常 例如:Integer i=null;int k=i;---------------------------拋出java.lang.NullPointerException  4.在遍曆集合或者數組的時候需要添加null判斷,不然當集合或者數組中包含null時,會拋出異常   5.在使用equals判斷字串是否相等時,要將常量字串放在equals的左邊,防止null 指標異常 例如:

String[] arr1={"abc","123",null,"sky"};
for (String s1 : arr1) {
boolean flag=s1.equals("sky");
}------------當取值到是=null時,會拋出null 指標異常,把s1.equals("sky")改為“sky”.equals(s1),就可以避免拋出異常

6.Null 字元串與null區別

  類型
null表示的是一個對象的值,而並不是一個字串。例如聲明一個對象的引用,String a = null ;
""表示的是一個Null 字元串,也就是說它的長度為0。例如聲明一個字串String str = "" ;

  記憶體配置
String str = null ; 表示聲明一個字串對象的引用,但指向為null,也就是說還沒有指向任何的記憶體空間;
String str = "";    表示聲明一個字串類型的引用,其值為""Null 字元串,這個str引用指向的是Null 字元串的記憶體空間;

在java中變數和引用變數是存在棧中(stack),而對象(new產生的)都是存放在堆中(heap):

  

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.