如java中:if(name == null)和if(null == name)有什麼講究嗎?java
答:在java裏面,它們是同樣的。可是一般寫爲null == name。這實際上是在C語言裏面引伸出來的。編程
在C語言裏面,爲了防止少敲一個等號,編程人員仍然能在編譯的時候找到錯誤。由於if(name = null)在編譯的時候不會出現錯誤,而if(null = name)是會編譯出錯的。spa
故而,null == name這種寫法,是從C語言的編程習慣中引入的。可是實際上在java裏面,if(nam = null)是會出現編譯錯誤的。會報以下錯誤:編譯
Type mismatch: cannot convert from XXX to boolean(類型匹配錯誤:不能從XXX轉換爲boolean類型)語言
因此在java裏面沒必要擔憂這個問題。可是,良好的編程習慣,仍是寫成null == name的好。co