null 與 equals判斷順序引起的頭疼事

2021-05-22 10:56:27 字數 329 閱讀 8805

寫了乙個方法,擷取字串的長度

public static string parseimagepath(string path)

else

return imagepath;

}標紅色**,有問題。如果path=null,那麼這個判斷就不起作用了,會報錯

剛開始,怎麼也想不通,已經在控制台上輸出了path=null,為什麼還會出現為空的錯誤

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

把**調一下位置,竟然就沒有錯誤了。string為空的狀態下,不能進行equal操作

呵呵,小小的細節不注意,卻讓人頭疼死啊

null和 以及 與equals的區別

string str1 null str引用為空 string str2 str引用為空串 直接點就是null沒有分配記憶體空間,而 分配了記憶體空間,因此str1還不是乙個例項化的物件,而str2已經例項化。注意因為null不是物件,是物件。所以比較的時候必須是 if str1 null 和if ...

null和 以及 與equals的區別

string str1 null str引用為空 string str2 str引用為空串 直接點就是null 沒有分配記憶體空間,而 分配了記憶體空間,因此str1還不是乙個例項化的物件,而str2已經例項化。注意因為null 不是物件,是物件。所以比較的時候必須是 if str1 null 和i...

null和 以及 與equals的區別

string型別與null比較用 string型別與空字串 比較用equals string str1 null str引用為空 string str2 str引用為空串 1.直接點就是null沒有分配記憶體空間,而 分配了記憶體空間,因此str1還不是乙個例項化的物件,而str2已經例項化。2.注...