Основы Go
2026-02-26 22:26 Diff

В Go логический тип (bool) используется для представления двух значений: true (истина) и false (ложь).

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

Логические операторы в Go позволяют комбинировать или изменять булевы значения (true и false). Они часто используются в условиях (if, for) и при построении сложных выражений.

Go поддерживает классические логические операции:

  • && — логическое «и» (возвращает true, если оба операнда истинны)
  • || — логическое «или» (возвращает true, если хотя бы один операнд истинен)
  • ! — логическое «не» (инвертирует значение: !true становится false)
  • == — сравнение на равенство
  • != — сравнение на неравенство

Примеры:

Объявление переменных

Переменные логического типа объявляются явно с использованием bool или через вывод типа:

Переменные логического типа по умолчанию получают значение false:

Строгая типизация

Go — строго типизированный язык. Это значит, что логические значения нельзя смешивать с другими типами. Например, нельзя сравнивать bool со строкой или числом:

Чтобы проверить, что число не равно нулю, сравнение выполняют явно:

Для строк проверка также выполняется явно:

Булевы значения можно сравнивать только с булевыми:

Сравнение строк

Go позволяет сравнивать строки с помощью стандартных операторов:

  • == — равно
  • != — не равно
  • <, >, <=, >= — лексикографическое сравнение (по порядку символов и длине)

Сравнение выполняется побайтно, в соответствии с кодировкой UTF-8.

Использование в функциях

Сравнения полезны даже без использования условных конструкций. Таким образом часто пишут функции-предикаты, то есть функции, которые выполняют проверки и возвращают булево значение.

Примеры вызовов: