Шаг 12.
Язык программирования Go.
Логические значения и выражения в Go

    На этом шаге продолжим рассматривать основы языка Go и познакомимся с логическими выражениями.

    В языке Go имеются два встроенных логических значения, true и false, оба относятся к типу bool. Кроме того, в Go поддерживаются стандартные логические операторы и операторы сравнения, возвращающие результат типа bool (табл.1).

Таблица 1. Логические операторы и операторы сравнения
Оператор Описание/результат
!b Оператор логического отрицания. Вернет false, если b имеет значение true
a || b Оператор "логическое ИЛИ" с сокращенным порядком вычисления.
Вернет true, если одно из подвыражений, a или b, вернет true
a && b Оператор "логическое И" с сокращенным порядком вычисления.
Вернет true, если оба подвыражения, a и b, вернут true
a < b Вернет true, если значение выражения a меньше значения выражения b
a <= b Вернет true, если значение выражения a меньше или равно значению выражения b
a == b Вернет true, если значение выражения a равно значению выражения
a != b Вернет true, если значение выражения a не равно значению выражения b
a >= b Вернет true, если значение выражения a больше или равно значению выражения b
a > b Вернет true, если значение выражения a больше значения выражения b

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

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

    На следующем шаге начнем рассматривать числовые типы данных в Go.


Предыдущий шаг Содержание Следующий шаг