String類型字符串判斷非空

         String類型的字符串的非空判斷還是經常會用到滴,但是前幾天用的過程中發現了一個問題:假如有一個字符差爲str

if(str == null || str.equals(""))  或者  if("".equals(str) || str == null)
        這樣判斷是沒有問題滴,但是我卻這樣寫了:

if(skipMark.equals("") || skipMark == null)

        然後非空判斷就出問題了,後來聽同事簡單說了一下原因,可惜不是太理解 - -!   不過還是先記錄下,以後不能再犯這樣的錯咯。至於具體原因嘛,等哪天我自己弄明白了再補上,如果有人看到正好對此理解透徹的話,還請不吝賜教 ~~~

        //2016-07-22        

        補充下:if(skipMark.equals("") || skipMark == null)這種情況,如果你先判斷equals ,那麼如果前面的那個變量爲null, 就會空指針。上面的兩種剛好避免了空指針的情況,所以最好用另外兩種寫法,多謝網友指導


發佈了47 篇原創文章 · 獲贊 13 · 訪問量 27萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章