При использовании с логическими операндами & и | становятся логическими операторами согласно разделу 15.22.2 JLS. Однако, в отличие от && и ||, они не замыкаются; они всегда оценивают обе стороны. У меня глупый вопрос: почему менее эффективные логические операторы без короткого замыкания (
, |) все еще здесь, когда у нас есть более эффективные логические операторы короткого замыкания (
, ||)? Я имею в виду, как на самом деле используются логические операторы, не являющиеся короткими замыканиями, в отличие от логических операторов короткого замыкания? Другими словами, какой смысл всегда оценивать обе стороны с помощью логических операторов, не являющихся короткими замыканиями?
Подробнее здесь:
https://stackoverflow.com/questions/926 ... -operators