『壹』 java中string型變數判斷是否為空哪個正確
首先就要確保他不是null,然後再判斷他的長度。
String str = xxx;
if(str != null && str.length() != 0) { }
這種做法是安全的,首先他會判斷str是否為空,如果為空那麼if就直接退出了,就不會再判斷後面的str.length() != 0了,這是JAVA的手塌&&特性,也許其他語言也是這樣。
String字元串判定是否為空方法總結
判斷一個字元串str不為空的方法有:
1. str!=null;(前提條件)
2. 「」.equals(str);
3. str.length()!=0;
注意:length是屬性,一般集合類對象擁有的屬性,取得集合的大小。
例如:數組.length就是取得數組的長度。
length()是方法,一般字元串類對象有該方法,也是取得字元串長度。
例如:字元串.length();
說明:
1. null表示這個字元串不指向任何的東西,那麼沒有是否為空的問題,因為引用的實例對象都沒有。這時候如果你調用它的方法,那麼就會出現空指針異常。
2.」「表畢雀圓示它指向一個長度為0的字元串,這時候調用它的方法歲橡是安全的。
3. null不是對象,」「是對象,所以null沒有分配空間,」「分配了空間,例如:
String str1 = null; str引用為空
String str2 = 「」; str應用一個空串
str1還不是一個實例化的對象,兒str2已經實例化。
對象用equals比較,null用等號比較。
如果str1=null;下面的寫法錯誤:
if(str1.equals(「」)||str1==null){ }
正確的寫法是 if( ( str1==null ) || str1.equals(「」)){
//先判斷是不是對象,如果是,再判斷是不是空字元串;而且順序不能亂 }