Основы Go
Теория: Цикл For
В Go есть только одна конструкция для организации циклов — for. Она заменяет собой и while, и do while из других языков. С её помощью можно реализовать любые виды повторений.
Классический цикл со счётчиком
Наиболее распространённый способ перебора:
Здесь:
i := 0— инициализация переменной.i < 5— условие выполнения.i++— шаг итерации.
Цикл с только условием
Такой for работает как while в других языках:
Бесконечный цикл
Обычно используется с break или return внутри тела, чтобы остановить выполнение.
Повторение действий с помощью range
В Go существует альтернативный вариант цикла для задачи повторения какого-то действия n раз. Вместо привычного счётчика i := 0; i < n; i++, можно использовать конструкцию for range.
Если понадобится использовать номер итерации, вы можете явно объявить переменную:
Такой цикл начинается с 0 и заканчивается на n - 1 — как в обычном счётчике.
Перебор строки посимвольно
Цикл for ... range позволяет пройтись по строке символ за символом. Внутри цикла доступны:
- Индекс символа.
- Сам символ в виде rune (Unicode).
Что делает range?
- Возвращает индекс текущего элемента (в байтах).
- Возвращает символ в виде rune — это Unicode-код символа.
Строка в Go — это последовательность байт, но range работает корректно с UTF-8 и возвращает именно символы (а не байты):
Индексы 0 и 2 — потому что символы г и о занимают по два байта каждый.
Если не нужен индекс, его можно опустить с помощью _:
Цикл range будет особенно полезен при работе с коллекциями (срезами, словарями и т.п.), к которым мы перейдём в следующих уроках.





