Go - 数据类型



在 Go 编程语言中,数据类型是指用于声明不同类型的变量或函数的广泛系统。变量的类型决定了它在存储中占用多少空间以及如何解释存储的位模式。

Go 中的类型可分为以下几类 -

类型 描述
Boolean types

它们是布尔类型,由两个预定义的常量组成:(a) true (b) false

Numeric types

它们又是算术类型,它们表示 a) 整数类型或 b) 整个程序中的浮点值。

String types

字符串类型表示字符串值的集合。它的值是一个字节序列。字符串是不可变类型,一旦创建,就无法更改字符串的内容。预声明的字符串类型为 string。

Derived types

它们包括 (a) 指针类型,(b) 数组类型,(c) 结构类型,(d) 联合类型和 (e) 函数类型 f) 切片类型 g) 接口类型 h) 映射类型 i) 通道类型

数组类型和结构类型统称为聚合类型。函数的类型指定具有相同参数和结果类型的所有函数的集合。我们将在下一节中讨论基本类型,而其他类型将在接下来的章节中介绍。

整数类型

预定义的与体系结构无关的整数类型为 −

类型 描述
uint8

无符号 8 位整数(0 到 255)

uint16

无符号 16 位整数(0 到 65535)

uint32

无符号 32 位整数(0 到 4294967295)

uint64

无符号 64 位整数(0 到 18446744073709551615)

int8

有符号 8 位整数(-128 到 127)

int16

有符号 16 位整数(-32768 到 32767)

int32

有符号 32 位整数(-2147483648 到 2147483647)

int64

有符号 64 位整数(-9223372036854775808 到 9223372036854775807)

浮动类型

预定义的与架构无关的浮点类型为 −

类型 描述
float32

IEEE-754 32 位浮点数

float64

IEEE-754 64 位浮点数

complex64

具有 float32 实部和虚部的复数

complex128

具有 float64 实部和虚部的复数

n 位整数的值是 n 位,使用二进制补码算术运算表示。

其他数值类型

还有一组具有特定于实现大小的 numeric types -

类型 描述
byte

与 uint8 相同

rune

与 int32 相同

uint

32 位或 64 位

int

与 uint 大小相同

uintptr

一个无符号整数,用于存储指针值的未解释位