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, 就會空指標。上面的兩種剛好避免了空指標的情況,所以最好用另外兩種寫法,多謝網友指導
相關文章
- 【JAVA】判斷字串非空Java字串
- java中判斷String型別為空和null的方法Java型別Null
- 2011-10-17 記錄型別判斷非空的辦法型別
- 判斷字串是否為空字串
- String:字串型別字串型別
- JavaScript判斷字串是否為空JavaScript字串
- js判斷字串是否為空JS字串
- java判斷字串是否為空Java字串
- js判斷型別JS型別
- JS 型別判斷JS型別
- 使用帶型別判斷的比較判斷型別
- J2SE-判斷字串是否為空字串
- 字串判空、判等字串
- Kotlin可空型別與非空型別以及`lateinit` 的作用Kotlin型別
- 最安全的型別判斷型別
- js判斷資料型別JS資料型別
- JavaScript判斷資料型別JavaScript資料型別
- 如何判斷變數型別變數型別
- js判斷裝置型別JS型別
- Vim檔案型別判斷型別
- js中的型別判斷JS型別
- MyBatis陣列與集合判斷非空和長度MyBatis陣列
- 判斷空值
- JavaScript 資料型別與型別判斷詳解JavaScript資料型別
- js資料型別的判斷JS資料型別
- jQuery判斷瀏覽器型別jQuery瀏覽器型別
- 判斷值的資料型別資料型別
- 深入瞭解JS型別判斷JS型別
- js資料型別及判斷JS資料型別
- js判斷輸入字串是否為空、空格、null總結JS字串Null
- Javascript判斷空物件JavaScript物件
- JS判斷PC瀏覽器型別JS瀏覽器型別
- python3 判斷資料型別Python資料型別
- JavaScript的資料型別如何判斷JavaScript資料型別
- python 判斷作業系統型別Python作業系統型別
- 判斷a是否是int型別資料型別
- 如何判斷JavaScript的資料型別?JavaScript資料型別
- 記一次關於js陣列型別判斷及js型別判斷的細節探索JS陣列型別
- 判斷javaScript變數是Ojbect型別還是Array型別JavaScript變數型別