Руководство для начинающих по логическим и реляционным операторам в Java

Руководство для начинающих по логическим и реляционным операторам в Java

Операторы - это символы, используемые для выполнения операций со значениями, переменными или операторами. Выражения, над которыми они выполняют эти действия, называются операндами. Операции возвращают логический результат (истина или ложь) для операторов отношения, равенства и логических операторов.





Количество операндов, которые принимает оператор, определяет его тип. Оператор, который принимает один операнд, называется «унарным». Оператор, который принимает два операнда, называется «двоичным».





Прочтите, чтобы узнать, как можно использовать логические и реляционные операторы в Java. Более того, большинство языков программирования используют одни и те же операторы, поэтому вы можете применить эти знания в другом месте.





Логические операторы

Они используются для построения логических операторов при программировании. В Java есть шесть логических операторов. В таблице ниже они обобщены.

ОператорИмяТип
|Булево логическое ИЛИДвоичный
&Булево логическое ИДвоичный
^Булево логическое исключающее ИЛИДвоичный
||Условное ИЛИДвоичный
&&Условное ИДвоичный
!Логическое НЕУнарный

Если вы хотите проверить, выполняются ли одно или оба условия, используйте этот оператор. Условие - это выражение, которое может быть истинным или ложным.



Логическое логическое включающее ИЛИ (|)

Логическое ИЛИ проверяет истинность обоих операндов перед вычислением выражения.

if ( dob <2005 | height <= 5){
money++;
}

Приведенный выше пример принесет кому-то больше денег, если его дата рождения (dob) меньше 2005 года или если его рост меньше или равен 5 футам.





Логическое логическое И (&)

Этот оператор используется для проверки того, выполняются ли оба условия, прежде чем переходить к определенному пути выполнения в программе. Сначала он проверяет, выполняются ли оба условия, прежде чем оценивать все выражение.

Связанный: Как проверить строки с помощью логических методов в Python





Булево логическое исключающее ИЛИ (^)

Если вы хотите проверить, выполняется ли одно из условий, но не оба, то этот оператор следует использовать. Приведенная ниже таблица истинности суммирует результаты, которые вы увидите при ее использовании.

выражение1выражение2выражение1 ^ выражение2
ложныйложныйложный
ложныйправдаправда
правдаложныйправда
правдаправдаложный

Логическое условное И (&&)

Этот оператор аналогичен логическому И. Разница в том, что он сначала проверяет, выполняется ли условие слева, прежде чем перейти к проверке того, что находится справа.

Если левая часть оказывается ложной, выполнение немедленно прекращается. В противном случае оценка правой части будет продолжена. Эта функция известна как оценка короткого замыкания.

См. Приведенную ниже таблицу истинности, чтобы обосновать свое понимание этого оператора.

выражение1выражение2выражение1 && выражение2
ложныйложныйложный
ложныйправдаложный
правдаложныйложный
правдаправдаправда

Условное ИЛИ (||)

Если любое из условий ложно, выполнение перейдет к следующей части программы. Другими словами, должны выполняться оба условия.

Этот оператор похож на логическое ИЛИ. Он также проверяет, выполняется ли одно или оба условия перед выполнением определенного кода.

Подобно условному И, логическое ИЛИ также использует оценку короткого замыкания. Сначала он проверяет, истинен ли операнд слева, прежде чем оценивать операнд справа.

Связанный: Что такое конструктор в Java и как его использовать?

классные вещи, которые можно сделать со старым компьютером

Если условие слева оказывается истинным, то нет необходимости проверять то, что находится справа. В противном случае оценка справа будет продолжена.

Логическое НЕ (!)

Этот оператор используется для отмены условия. Он просто меняет смысл того, над чем работает.

if(!(x>5)){
// statements
}

Вышеупомянутое утверждение означает, что если «x больше 5» НЕ истинно, выполните инструкции внутри если .

Обратите внимание на использование круглых скобок в выражении (x> 5). Если вы не включите эти скобки при написании программы, вы получите ошибку времени компиляции. Причина в том, что ! - унарный оператор, действующий на условие. Без скобок компилятор интерпретировал бы его как оператор, действующий на x, а не x> 5.

Включение скобок не только для того, чтобы компилятор мог правильно интерпретировать выражение. Они также могут быть использованы программистом для лучшего понимания более сложных выражений. Посмотрите на пример ниже:

age >= 7 && height <5

Некоторым людям может быть трудно придерживаться этой логики. Поэтому некоторые программисты предпочитают добавлять лишние круглые скобки для удобства чтения:

(age >= 7) && (height <5)

Операторы отношения

Эти операторы используются для сравнения простых отношений между операндами.

ОператорИмя
>Больше чем
<Меньше, чем
> =Больше или равно
<=Меньше или равно

Операторы отношения довольно легко понять, потому что все они имеют то же значение, что и обычные алгебраические операторы, с которыми вы уже знакомы. То есть, > а также < имеют то же значение, которое вы уже знаете, что и значение, указанное в таблице выше.

if( x <= 7 ){
x++;
}

Над если Оператор проверяет, меньше ли x или равно 7. Если это правда, то выполняются операторы внутри скобок, в противном случае - нет.

Теперь самое время упомянуть операторы равенства. Их всего два (равно, == и! =, Не равно). Как следует из названия, они используются для проверки равенства между двумя операндами.

Связанный: Как создавать и выполнять операции с массивами в Java

Оператор равенства (==) не следует путать с оператором присваивания (=). Начинающие программисты любят смешивать и то, и другое. Это разумно, поскольку в алгебре символ (=) используется для обозначения равенства. Однако в программировании это не так.

Оператор присваивания (=) присваивает значение переменной, а оператор равенства (==) проверяет равенство. См. Пример ниже, чтобы понять разницу:

if(x=5){
// statements
}

Приведенный выше код всегда будет выполняться независимо от того, действительно ли x равно 5. Между тем, приведенный ниже код будет выполняться только в том случае, если x равен 5. Поэтому важно не путать их.

if(x==5){
// statements
}

Два упомянутых оператора равенства имеют одинаковый уровень приоритета, хотя и более низкий, чем у операторов отношения.

Операторы отношения также имеют такой же уровень приоритета. Выполнение этих операторов начинается слева направо.

Дополнительные соображения по операторам Java

Вы, должно быть, заметили, что в некоторых примерах есть пробелы между некоторыми операторами и их операндами, в то время как в других их нет.

Отсутствие / наличие этого места не должно вас беспокоить. Компилятор проигнорирует это. Следовательно, следующие выражения означают одно и то же:

Y>=7 // no whitespace
Y >= 7 // with whitespace

Операторы отношения обычно используются для выражения простых условий. Чтобы объединить простые условия в более сложные, вам придется использовать логические операторы. Логические операторы могут проверять несколько условий, в отличие от операторов отношения, которые проверяют только одно условие.

Также важно отметить, что логические операторы (|, &, ^) могут быть побитовыми операторами, если они имеют целочисленные операнды. При использовании в качестве побитовых операторов они будут работать с битами своих операндов.

Обладая этими знаниями операторов, вы должны готовиться к изучению классов Java.

Делиться Делиться Твитнуть Эл. адрес Узнайте, как создавать классы на Java

Если вы учитесь программировать на Java, вам нужно знать, как создавать классы.

Читать далее
Похожие темы
  • Программирование
  • Джава
  • Учебники по кодированию
Об авторе Джером Дэвидсон(Опубликовано 22 статей)

Джером - штатный писатель в MakeUseOf. Он освещает статьи по программированию и Linux. Он также криптоэнтузиаст и всегда следит за криптоиндустрией.

Ещё от Jerome Davidson

Подписывайтесь на нашу новостную рассылку

Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!

Нажмите здесь, чтобы подписаться