這些比較是否始終安全無法創建NullPointer異常?這是一個很好的IF塊嗎?
if(myObject == null || myObject.someMethod() == someValue)
{
if(myObject == null && myObject.getAlwaysTrue())
{
}
}
除了短路之外,java是否還有條件評估方向優先?
更新:我知道myObject.anything()
會拋出一個NullPointer。這只是因爲我遇到了其他程序員的代碼,我想知道是否有一種安全的方法可以在單個條件下將多個檢查與空檢查一起執行。我正在尋找一條堅持的好規則。
優先順序,總是從左到右(除非你有括號內的東西)。 – kosa
使用IDE進行研究。更好的人會爲你標記這種不安全的代碼。 – dnault