如java中:if(name == null)和if(null == name)有什么講究嗎?
答:在java里面,它們是一樣的。但是通常寫為null == name。這其實是在C語言里面引申出來的。
在C語言里面,為了防止少敲一個等號,編程人員仍然能在編譯的時候找到錯誤。因為if(name = null)在編譯的時候不會出現錯誤,而if(null = name)是會編譯出錯的。
故而,null == name這種寫法,是從C語言的編程習慣中引入的。但是實際上在java里面,if(nam = null)是會出現編譯錯誤的。會報如下錯誤:
Type mismatch: cannot convert from XXX to boolean(類型匹配錯誤:不能從XXX轉換為boolean類型)
所以在java里面不必擔心這個問題。但是,良好的編程習慣,還是寫成null == name的好。