普段なにげなく使っていても挙動の違いをよくわかっていないもの
&&だと省エネ判定モードで
A && B
の条件の時Aの条件が満たされなければBは評価されない。
つまりJavaでいうなら
if (obj !=null && obj.equals(obj2)) {
}
objがnullの時には右のequalsは実施されない。
逆に&だと入念に調べる石橋をたたいて渡るモードなので
AもBも見てからAND条件を判定する。しかしこれだと上記の式でobjがNULLだった時NullPointerExceptionがでてしまう。
[|| と |]についても違いは同様。
日常では&&の方がよく使うと思うけど皆さんはどうかな?
1 Response to 条件文 [&& と &] [|| と |] の違い