Освой программирование играючи
/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000
Операторы сравнения выдают логический результат (boolean). Если условие проверки истинно, оператор выдает true, а если ложно - false. К операторам сравнения относятся < (меньше чем), > (больше чем), <= (меньше чем или равно), >= (больше чем или равно), == (равно), != (не равно). Операторы "Равно" и "не равно" можно использовать для всех примитивных типов данных, однако остальные сравнения нельзя использовать к типу boolean.
| Оператор | Пример использования | Возвращает значение "истинно", если... |
|---|---|---|
| > | a > b | а больше b |
| >= | a >= b | а больше или равно b |
| < | a < b | а меньше b |
| <= | a <= b | а меньше или равно b |
| == | a == b | а равно b |
| != | a != b | а не равно b |
| && | a && b | а и b истинны, b оценивается условно (если а ложно, b не вычисляется) |
| || | a || b | а или b истинно, b оценивается условно (если а истинно, b не вычисляется) |
| ! | !a | а ложно |
| & | a & b | а и b истинны, b оценивается в любом случае |
| | | a | b | а или b истинно, b оценивается в любом случае |
| ^ | a ^ b | а и b различны |
Наиболее часто операции сравнения используют в выражениях, которые управляют оператором if и операторами цикла.
Обратите внимание, что равенство обозначается двумя знаками равно (==), одиночный знак равно (=) - это оператор присваивания. Типичная ошибка начинающих программистов.
Корректный вариант примера:
int x = 5;
int y = 7;
boolean z = a < b; // результат сохраняется в переменной типа boolean
Примеры для оператора if для Java (В C++ используется другой синтаксис!):
int cat_age;
if(cat_age == 4) // нельзя if(cat_age) - нет сравнения
if(cat_age != 9) // нельзя if(!cat_age) - нет сравнения
Помните, что в Java значения true и false не являются числовыми значениями, как в C++, поэтому, чтобы сравнить значение с другим значением, необходимо явно использовать операторы сравнения.