Go 数据类型
在Go编程语言中,数据类型是指用于声明不同类型的变量或函数的扩展系统。变量的类型决定了它在存储中占据多少空间以及如何解释所存储的位模式。
Go中的类型可分为以下几种:
序号 | 类型和说明 |
---|---|
1 | 布尔类型 它们是布尔类型,由两个预定义常量组成:(a)是(b)否 |
2 | 数值类型 它们还是算术类型,在整个程序中代表a)整数类型或b)浮点值。 |
3 | 字符串类型 字符串类型表示字符串值的集合。它的值是一个字节序列。字符串是一经创建的不可变类型,因此无法更改字符串的内容。预先声明的字符串类型为string。 |
4 | 派生类型 它们包括(a)指针类型,(b)数组类型,(c)结构类型,(d)联合类型和(e)函数类型f)切片类型g)接口类型h)映射类型i)通道类型 |
数组类型和结构类型统称为集合类型。函数的类型指定具有相同参数和结果类型的所有函数的集合。我们将在下一节中讨论基本类型,而其他类型将在接下来的章节中介绍。
整数类型
预定义的与体系结构无关的整数类型为:
序号 | 类型和说明 |
---|---|
1 | uint8 无符号8位整数(0到255) |
2 | uint16 无符号16位整数(0到65535) |
3 | uint32 无符号32位整数(0到4294967295) |
4 | uint64 无符号64位整数(0到18446744073709551615) |
5 | int8 带符号的8位整数(-128至127) |
6 | int16 有符号16位整数(-32768至32767) |
7 | int32 有符号的32位整数(-2147483648至2147483647) |
8 | int64 有符号的64位整数(-9223372036854775808至9223372036854775807) |
浮点类型
预定义的与体系结构无关的浮点类型为:
序号 | 类型和说明 |
---|---|
1 | float32 IEEE-754 32位浮点数 |
2 | float64 IEEE-754 64位浮点数 |
3 | complex64 带有float32实部和虚部的复数 |
4 | complex128 带有float64实部和虚部的复数 |
n位整数的值是n位,并使用二进制的补码算术运算表示。
其他数值类型
还有一组具有特定于实现的大小的数字类型:
序号 | 类型和说明 |
---|---|
1 | byte 与uint8相同 |
2 | rune 与int32相同 |
3 | uint 32或64位 |
4 | int 与uint一样大小 |
5 | uintptr 一个无符号整数,用于存储指针值的未解释位 |