Java字符串中“” , “ ”,和null的區別



null是一個空引用,它沒有分配空間。

“”是一個空字符串,它分配了內存空間,但是沒有內容。

“ ”是空格,佔位符

如果s=null,則一般可以用實例化給它分配空間,也可以賦予某個引用;

如果s=“”,表示s是一個字符串,只是沒有內容,可以把它視爲String對象對待。

如果s =" "說明s中包含一個空格


                String str ="";
		System.out.println(str.length());
		System.out.println(str.hashCode());
		System.out.println(str==null);


     輸出

             0
             0
          false

java中判斷字符串是否沒有內容:

s==null||"".equals(s)


順便補充一個與此相關的題目:

1. 如果int x=20, y=5,則語句System.out.println(x+y +""+(x+y)+y);  的輸出結果是(D)
A.  2530    B.  55    C. 2052055    D. 25255


因爲x和y是int型的,所以x+y就=20+5=25
x+y +""+(x+y)+y
就等價於25+“”+(25)+5

“”是空字符,不是空格。
因爲中間加了個空字符,所以25,25和5就不能再算加法了,要當成字符串拼接


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章