Пакеты, Переменные и функции являются важными строительными блоками языка программирования Go. Давайте обсудим здесь переменные подробно.

Go - это статически типизированный язык программирования. Это означает, что переменные всегда имеют определенный тип и этот тип не может измениться. Поначалу статический набор текста может показаться обременительным. Вы потратите много времени, просто пытаясь исправить свою программу, чтобы она наконец скомпилировалась. Но типы помогают нам понять, что делает наша программа, и выявить множество распространенных ошибок.

Go поставляется с несколькими встроенными типами данных, которые мы сейчас рассмотрим более подробно.

Числа

В Go есть несколько разных типов для представления чисел. Обычно мы разделяем числа на два разных типа: целые числа и числа с плавающей запятой.

Целые числа

Целые числа - это в основном числа без десятичного компонента. В Go целые числа представлены следующими типами: uint8, uint16, uint32, uint64, int8, int16, int32 и int64. 8, 16, 32 и 64 говорят нам, сколько битов использует каждый из типов. uint означает «целое число без знака», а int означает «целое число со знаком». Беззнаковые целые числа содержат только положительные числа (или ноль).

Просто, если вы работаете с целыми числами, вы можете использовать int, а если вы хотите продолжить оптимизацию и знать, какой максимальный бит требуется, вы можете указать размер бит, например int8 или int16

Возьмем пример int сложения.

Числа с плавающей запятой

Числа с плавающей запятой - это числа, содержащие десятичный компонент (действительные числа). (5,432, 0,456, 0,0000768). Как мы уже обсуждали для целых чисел, числа с плавающей запятой имеют определенный размер (32 или 64 бита). Использование числа с плавающей запятой большего размера увеличивает его точность. (сколько цифр он может представлять). В дополнение к числам float может представлять некоторые другие значения, например «не число - NaN» или положительную и отрицательную бесконечность. (+∞ и −∞).

Go имеет два типа с плавающей запятой: float32 и float64 (также часто называемые одинарной точностью и двойной точностью соответственно), а также два дополнительных типа для представления комплексных чисел (чисел с мнимыми частями): complex64 и complex128. Обычно мы используем float64 при работе с числами с плавающей запятой для большей точности вычислений.

Возьмем пример сложения float.

Строки

Как правило, строки представляют собой последовательность символов определенной длины, используемую для представления текста. Строки Go состоят из отдельных байтов, обычно по одному для каждого символа (есть некоторые исключения для других языков).

Строковые литералы могут быть созданы с использованием двойных кавычек "Hello World", одинарных кавычек 'Hello World' или обратных кавычек `Hello World`. Разница между ними в том, что строки в двойных кавычках и строки в одинарных кавычках не могут содержать символы новой строки и допускают специальные escape-последовательности. Например, \n заменяется новой строкой, а \t заменяется символом табуляции.

Давайте рассмотрим несколько примеров общих операций со строками.

Логическое

Логическое значение - это специальный 1-битный целочисленный тип, используемый для представления истинного и ложного (или включения и выключения). С логическими значениями используются три логических оператора: && (и), || (или), ! (нет).