Основные литералы значений
Литерал значения — это текстовое представление значения в коде. Значение может иметь много литералов. Литералы, обозначающие значения базовых типов, называются литералами базовых значений.
Логические литералы значений
Спецификация Go не определяет логические литералы. Однако в общем программировании мы можем рассматривать два предварительно объявленных идентификатора false и true как логические литералы. Но мы должны знать, что они не являются буквальными в строгом смысле.
Как упоминалось выше, нулевые значения логических типов обозначаются заранее объявленной false константой.
Литералы целочисленных значений
Существует четыре литерала целочисленных значений:
- десятичная (по основанию 10);
- восьмеричная (по основанию 8);
- шестнадцатеричная (по основанию 16);
- двоичная (по основанию 2).
Например, следующие четыре целочисленных литерала обозначаются 15 десятичными числами.

Примечание: двоичная форма и восьмеричная форма, начиная с 0o или 0O, поддерживаются, начиная с Go 1.13.
Следующая программа напечатает два true текста.

Обрати внимание, что это два \== оператора сравнения «равно», которые будут представлены в общих операторах.
Как правило, нулевые значения целочисленных типов обозначаются как 0 литералы, хотя существует множество других допустимых литералов для целочисленных нулевых значений, таких как 00 и 0x0. На самом деле литералы нулевого значения, представленные в этих главах для других типов числовых типов, также могут представлять нулевое значение любого целочисленного типа.
Литералы значений с плавающей запятой
Десятичный литерал значения с плавающей запятой может содержать десятичную целую часть, десятичную точку, десятичную дробную часть и часть целой степени (на основе 10). Такая часть целочисленной экспоненты начинается с буквы e или E и суффиксов с десятичным целочисленным литералом ( xEn эквивалентно x умножается на, и эквивалентно делится на). Некоторые примеры: 10n xE-n x 10n

Начиная с Go 1.13, Go также поддерживает другую литеральную форму с плавающей запятой: шестнадцатеричную литеральную форму с плавающей запятой.
- Шестнадцатеричный литерал с плавающей запятой должен заканчиваться частью экспоненты с отсчетом от 2, которая начинается с буквы p или P и заканчивается литералом десятичного целого числа (yPn эквивалентно y умножается на 2n и эквивалентно y делится на 2n).
- Как и шестнадцатеричные целочисленные литералы, шестнадцатеричный литерал с плавающей запятой также должен начинаться с 0x или 0X. В отличие от литералов шестнадцатеричных целых чисел, шестнадцатеричный литерал с плавающей запятой может содержать десятичную точку и десятичную дробную часть.
Ниже приведены некоторые допустимые шестнадцатеричные литералы с плавающей запятой.

Однако следующие из них являются незаконными.

Примечание: следующий литерал допустим, но он не является литералом с плавающей запятой. На самом деле это арифметическое выражение вычитания. В нем e означает14 в десятичном виде. 0x15e представляет собой шестнадцатеричный целочисленный литерал, - является оператором вычитания, а 2 представляет собой десятичный целочисленный литерал.

Стандартными литералами для нулевого значения типов с плавающей запятой являются 0.0, хотя существует много других допустимых литералов, таких как 0., .0, 0e0, 0x0p0 и т.д. На самом деле литералы с нулевым значением, представленные в этих главах для других видов числовых типов, также могут представлять нулевое значение любого типа с плавающей запятой.
Литералы мнимых значений
Воображаемый литерал состоит из литерала с плавающей запятой или целого числа и строчной буквы i. Примеры:

Обрати внимание, что до Go 1.13 в воображаемом литерале перед буквой i может стоять только литерал с плавающей запятой. Чтобы быть совместимыми со старыми версиями, начиная с Go 1.13, целочисленные литералы, отображаемые как восьмеричные целые формы, не начинаются с 0o и 0O по-прежнему рассматриваются как литералы с плавающей запятой, такие как 011i, 0123i и 00011i в приведенном выше примере.
Мнимые литералы используются для представления мнимых частей комплексных значений. Вот несколько литералов для обозначения комплексных значений.

Стандартными литералами для нулевых значений сложных типов являются 0.0+0.0i, хотя существует много других допустимых литералов, таких как 0i, .0i, 0+0i и т. д. Фактически, литералы нулевого значения, представленные в этихглавах для других видов числовых типов, также могут представлять нулевое значение любого сложного типа.