HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>В Go логический тип (bool) используется для представления двух значений: true (истина) и false (ложь).</p>
1 <p>В Go логический тип (bool) используется для представления двух значений: true (истина) и false (ложь).</p>
2 <h2>Логические операторы</h2>
2 <h2>Логические операторы</h2>
3 <p>Логические операторы в Go позволяют комбинировать или изменять булевы значения (true и false). Они часто используются в условиях (if, for) и при построении сложных выражений.</p>
3 <p>Логические операторы в Go позволяют комбинировать или изменять булевы значения (true и false). Они часто используются в условиях (if, for) и при построении сложных выражений.</p>
4 <p>Go поддерживает классические логические операции:</p>
4 <p>Go поддерживает классические логические операции:</p>
5 <ul><li>&amp;&amp; - логическое "и" (возвращает true, если оба операнда истинны)</li>
5 <ul><li>&amp;&amp; - логическое "и" (возвращает true, если оба операнда истинны)</li>
6 <li>|| - логическое "или" (возвращает true, если хотя бы один операнд истинен)</li>
6 <li>|| - логическое "или" (возвращает true, если хотя бы один операнд истинен)</li>
7 <li>! - логическое "не" (инвертирует значение: !true становится false)</li>
7 <li>! - логическое "не" (инвертирует значение: !true становится false)</li>
8 <li>== - сравнение на равенство</li>
8 <li>== - сравнение на равенство</li>
9 <li>!= - сравнение на неравенство</li>
9 <li>!= - сравнение на неравенство</li>
10 </ul><p>Примеры:</p>
10 </ul><p>Примеры:</p>
11 <h2>Объявление переменных</h2>
11 <h2>Объявление переменных</h2>
12 <p>Переменные логического типа объявляются явно с использованием bool или через вывод типа:</p>
12 <p>Переменные логического типа объявляются явно с использованием bool или через вывод типа:</p>
13 <p>Переменные логического типа по умолчанию получают значение false:</p>
13 <p>Переменные логического типа по умолчанию получают значение false:</p>
14 <h2>Строгая типизация</h2>
14 <h2>Строгая типизация</h2>
15 <p>Go - строго типизированный язык. Это значит, что логические значения нельзя смешивать с другими типами. Например, нельзя сравнивать bool со строкой или числом:</p>
15 <p>Go - строго типизированный язык. Это значит, что логические значения нельзя смешивать с другими типами. Например, нельзя сравнивать bool со строкой или числом:</p>
16 <p>Чтобы проверить, что число не равно нулю, сравнение выполняют явно:</p>
16 <p>Чтобы проверить, что число не равно нулю, сравнение выполняют явно:</p>
17 <p>Для строк проверка также выполняется явно:</p>
17 <p>Для строк проверка также выполняется явно:</p>
18 <p>Булевы значения можно сравнивать только с булевыми:</p>
18 <p>Булевы значения можно сравнивать только с булевыми:</p>
19 <h2>Сравнение строк</h2>
19 <h2>Сравнение строк</h2>
20 <p>Go позволяет сравнивать строки с помощью стандартных операторов:</p>
20 <p>Go позволяет сравнивать строки с помощью стандартных операторов:</p>
21 <ul><li>== - равно</li>
21 <ul><li>== - равно</li>
22 <li>!= - не равно</li>
22 <li>!= - не равно</li>
23 <li>&lt;, &gt;, &lt;=, &gt;= - лексикографическое сравнение (по порядку символов и длине)</li>
23 <li>&lt;, &gt;, &lt;=, &gt;= - лексикографическое сравнение (по порядку символов и длине)</li>
24 </ul><p>Сравнение выполняется побайтно, в соответствии с кодировкой UTF-8.</p>
24 </ul><p>Сравнение выполняется побайтно, в соответствии с кодировкой UTF-8.</p>
25 <h2>Использование в функциях</h2>
25 <h2>Использование в функциях</h2>
26 <p>Сравнения полезны даже без использования условных конструкций. Таким образом часто пишут функции-предикаты, то есть функции, которые выполняют проверки и возвращают булево значение.</p>
26 <p>Сравнения полезны даже без использования условных конструкций. Таким образом часто пишут функции-предикаты, то есть функции, которые выполняют проверки и возвращают булево значение.</p>
27 <p>Примеры вызовов:</p>
27 <p>Примеры вызовов:</p>
28  
28