9.6.3 数字型

Go包括一组预定义的数值类型,用于表示整数、浮点数和复数值的集合。

无关架构的数值类型有:

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 实部和虚部的所有复数的集合

还有一组具有具体实现大小的预声明数值类型:

uint     32 位或 64 位
int      与 uint 大小相同
uintptr  一个无符号整数,大到足以存储指针值的未解释位

这些数值类型是已定义的类型,它们彼此不同。在表达式或赋值中混合不同的数值类型时,需要进行显式转换。

此外,Go 还包括两个预先声明的类型别名,byte和rune:

byte        uint8的别名
rune        int32的别名

最后更新于