欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java null 和 的區別

錢衛國1年前8瀏覽0評論

Java中null和""(空字符串)是兩個不同的概念,即便他們看起來比較相似。

在Java中null代表的是一個完全不存在的對象,在內存中以0表示,而""(空字符串)是一個長度為0的字符串對象。

String str = null;
System.out.println(str);    //輸出null
String str2 = "";
System.out.println(str2);   //輸出空字符串

從上面的代碼可以看出來,null輸出的是null,而""(空字符串)輸出的是空字符串。

在Java中,使用null來表達未被賦值的狀態時是非常常見的,而使用""(空字符串)來表達這種狀態則可能會引起一些混淆。

如果一個字符串變量在定義時沒有被賦值,那么它的默認值就是null。如果你需要表示這個字符串變量的值是一個空字符串,你需要手動將其賦值為""。

String str = null;
System.out.println(str.isEmpty());   //拋出NullPointerException異常
String str2 = "";
System.out.println(str2.isEmpty());  //輸出true

從上面的代碼可以看出來,我們不能在一個null的對象上調用非靜態方法或者訪問他的成員變量,否則會拋出NullPointerException異常。

因為null表示的是一個完全不存在的對象,它沒有任何屬性和方法,所有的方法訪問都會失敗。而""(空字符串)是一個完全存在的對象,所以我們可以在它上面調用相應的方法和訪問相應的屬性。