Шаг 16.
Язык программирования Go.
Введение в инструкции

    На этом шаге рассмотрим общие вопросы инструкций в Go.

    Формально во многих ситуациях синтаксис языка Go требует использовать точки с запятой (;) для завершения инструкций. В действительности использовать точки с запятыми требуется довольно редко. Это объясняется тем, что компилятор автоматически вставляет точки с запятой в концах непустых строк, завершающихся идентификатором, числовым литералом, символьным литералом, строковым литералом, некоторыми ключевыми словами (break, continue, fallthrough, return), инструкциями инкремента или декремента (++ или -- ) или закрывающей круглой, квадратной или фигурной скобкой (), ], }).

    Два типичных случая обязательного использования точек с запятой – когда в одной строке находятся две или более инструкций и в простых циклах for.

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

// Правильно
for i := 0; i < 5; i++ {
    fmt.Println(i)
}
// НЕПРАВИЛЬНО! (Не будет компилироваться)
for i := 0; i < 5; i++
{
    fmt.Println(i)
}

    Второй фрагмент не будет компилироваться, потому что компилятор автоматически добавит точку с запятой после ++.

    Присваивание значений выполняется с помощью оператора присваивания =. Переменные могут одновременно объявляться с помощью ключевого слова var и инициализироваться с использованием оператора =. Тип, присваиваемый переменной, должен быть совместим с присваиваемым значением. Если оператор = используется без ключевого слова var, переменная слева от него уже должна существовать к этому моменту. Допускается указывать слева от оператора присваивания несколько переменных, перечисленных через запятую, а также использовать пустой идентификатор (_), совместимый со значениями любых типов и позволяющий игнорировать любые присваиваемые значения. Множественное присваивание упрощает возможность обмена двух переменных значениями без явного создания временной переменной, например a, b = b, a.

    Оператор сокращенного объявления переменных (:= ) одновременно объявляет новую переменную и присваивает ей значение. Допускается указывать слева от оператора несколько переменных, перечисленных через запятую, как в случае с оператором присваивания =, за исключением того, что слева должна быть указана как минимум одна новая переменная (пустой идентификатор не считается). Если слева от оператора указана уже существующая переменная, ей просто будет присвоено новое значение, если только оператор := не находится в начале новой области видимости, такой как инструкция if или блок инициализации инструкции for.

    Задание 1. Реализуйте пример, демонстрирующий "затенение" переменных.

Раскрыть/скрыть решение и комментарии.

    Инструкция return позволяет возвращать из функций одно или более именованных возвращаемых значений , без явного их указания в инструкции. В таких ситуациях возвращаться будут именованные возвращаемые значения, инициализированные нулевыми значениями в начале функции, которые могут изменяться в теле функции с помощью оператора присваивания.

    На следующем шаге рассмотрим инструкцию if в Go.


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