JavaRush/Java блог/Архив info.javarush/Логические операторы. Объясните мне, в чем разница?
asdusk05
8 уровень

Логические операторы. Объясните мне, в чем разница?

Статья из группы Архив info.javarush
участников
Логические операторы. Объясните мне, в чем разница? - 1& — Логическое AND (И) && — Сокращённое AND | — Логическое OR (ИЛИ) || — Сокращённое OR ^ — Логическое XOR (исключающее OR (ИЛИ)) ! — Логическое унарное NOT (НЕ) &= — AND с присваиванием |= — OR с присваиванием ^= — XOR с присваиванием == — Равно != — Не равно ?: — Тернарный (троичный) условный оператор оператор Мне, как новичку большинство из них понятны, а те что не понятны можно погуглить. Но гугл мне не ответил, в чем разница между логическим И (ИЛИ) и сокращенным? В чем принципиальное отличие (если оно есть). В каких случаях можно применить тот или иной оператор? Спасибо.
Комментарии (7)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
VitalyK #1116124
Уровень 39
27 мая 2019, 03:53
сокращенные не рассматривают ситуацию если первое выражение верно, то второе не рассматривают Допустим в И (&) если первое выражение равно false, то второе не рассматривается. Допустим делить на ноль нельзя, и во втором выражение возможно деление на ноль. Но оно не будет рассматриваться если первое выражение false и значит ошибку не выдаст компилятор.
Yol
Уровень 16
27 марта 2015, 02:18
asdusk05
Уровень 8
27 марта 2015, 02:28
то есть, в условии а > b && с > d, если первое условие (a>b) не выполняется, то второе (c>d) не рассматривается, я правильно понял? тогда зачем использовать &?
Yol
Уровень 16
27 марта 2015, 02:49
более подробно и с примерами javapd.blogspot.com/2008/08/27-short-circuit-10.html
Sant9Iga
Уровень 41
27 марта 2015, 03:11
бывают ситуации, когда нужно что бы оба условия проверились. не всегда а > b && с > d тут будут такие простые условия. там могут быть методы, которые возвращают булин. И эти методы могут выполнять что то важное.
terranum
Уровень 28
27 марта 2015, 01:21


Для начала давай взглянем на вот эту таблицу, тут все понятно?
asdusk05
Уровень 8
27 марта 2015, 02:05
эта таблица мне понятна. но мой вопрос с ней вроде бы не связан. мне интересно узнать в чем разница && и & ( | и || )