Ответ
В Go существует несколько категорий встроенных (pre-declared) типов данных.
Основные типы
Логический тип (Boolean):
bool
: принимает значенияtrue
илиfalse
.
Строковый тип (String):
string
: представляет собой неизменяемую последовательность байт. Строки в Go кодируются в UTF-8.
Числовые типы (Numeric):
- Целочисленные со знаком:
int
,int8
,int16
,int32
,int64
. - Целочисленные без знака:
uint
,uint8
,uint16
,uint32
,uint64
,uintptr
. - С плавающей точкой:
float32
,float64
. - Комплексные числа:
complex64
,complex128
.
Важные псевдонимы (aliases):
byte
: является псевдонимом дляuint8
.rune
: является псевдонимом дляint32
и представляет собой кодовую точку Unicode.
Примечание: Типы
int
,uint
иuintptr
являются платформозависимыми: их размер (32 или 64 бита) зависит от архитектуры операционной системы.- Целочисленные со знаком:
Специальные предопределенные типы
error
: специальный встроенный интерфейсный тип для обработки ошибок. Любой тип, реализующий методError() string
, удовлетворяет интерфейсуerror
.any
: с версии Go 1.18 является псевдонимом для пустого интерфейсаinterface{}
. Обозначает значение любого типа.
Важно отличать базовые типы от составных (композитных) типов, которые строятся на их основе: array
, slice
, map
, struct
, channel
, function
, interface
, pointer
.