オブジェクトを扱うときにと を使用するequals(Boolean)
と異なる結果が返される状況はありますか?==
Boolean
Boolean.TRUE == myBoolean;
Boolean.TRUE.equals(myBoolean);
ここではプリミティブ型については考えていません。ブール型のオブジェクトだけです。
定数の 1 つに由来するのではなく、 として構築されている可能性がある==
ため、使用するのは危険です。この場合、常に結果が になります。あなたはちょうど使用することができますmyBoolean
new Boolean(boolValue)
==
false
myBoolean.booleanValue()
どちら==
もequals
関与せず、信頼できる結果をもたらします。値にも対応する必要がある場合は、あなたのアプローチにnull
勝るものはありません。equals
==
常に使用する必要があるオブジェクトを比較する場合にのみ、プリミティブ型に対してのみ機能しますo.equls(Object ob)