Go语言数据类型
在Go编程语言中,数据类型用于声明函数和变量。
数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。
Go语言按类别有以下几种数据类型:
- 布尔型:布尔型的值可以是常量true或者false。一个简单的例子:var boolValue = true 。
- 数字类型:整形int和浮点型float32、float64,Go语言支持整型和浮点型数字,并且支持复数,其中位运算采用补码。
- 字符串类型:字符串就是一串固定长度的字符连接起来的字符序列。Go的字符串是由单个字节连接起来的。Go语言的字符串的字节使用UTF-8编码标识Unicode文本。
- 派生类型:
- 指针类型(Pointer)
- 数组类型
- 结构化类型
- Channel类型
- 函数类型
- 切片类型
- 接口类型(interface)
- Map类型
数字类型
Go也有基于架构的类型,例如:int、uint 和 uintptr。
- 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 :32位实数和虚数
- complex128 :128位实数和虚数
其他数字类型
- byte :类似uint8
- rune :类似uint32
- uint :32或64位
- uintptr :无符号整型,用于存放一个指针