在 Go 语言中,数字型变量用于存储数值类型的数据,例如整数和浮点数。Go 语言提供了几种数字型变量类型,每种类型都有不同的特性和表示范围。
整数类型
• int 和 uint:表示有符号整数和无符号整数,它们的具体大小取决于所在的平台,可以是 32 位或 64 位。
• int8 和 uint8:表示有符号 8 位整数和无符号 8 位整数,范围分别是 -128 到 127 和 0 到 255。
• int16 和 uint16:表示有符号 16 位整数和无符号 16 位整数,范围分别是 -32768 到 32767 和 0 到 65535。
• int32 和 uint32:表示有符号 32 位整数和无符号 32 位整数,范围分别是 -2147483648 到 2147483647 和 0 到 4294967295。
• int64 和 uint64:表示有符号 64 位整数和无符号 64 位整数,范围分别是 -9223372036854775808 到 9223372036854775807 和 0 到 18446744073709551615。
浮点数类型
• float32:表示 32 位浮点数,范围约为 ±1.18e-38 到 ±3.4e38。
• float64:表示 64 位浮点数,也称为 double,范围约为 ±2.23e-308 到 ±1.8e308。
byte 类型
• byte 类型是 uint8 的别名,它表示一个字节大小的无符号整数。
• 在 Go 中,byte 类型通常用于存储 ASCII 字符或二进制数据。
rune 类型
• rune 类型是 int32 的别名,它表示 Unicode 字符。
• 在 Go 中,rune 类型用于存储单个 Unicode 字符,可以表示任何 Unicode 码点值。
package main
import "fmt"
func main() {
const char rune = 'A'
fmt.Printf("%T, %d\n", char, char)
// int32, 65
}
复数类型
• Go 支持复数类型来处理复数运算,复数由实部和虚部组成。
• complex64 表示实部和虚部都是 32 位浮点数的复数。
• complex128 表示实部和虚部都是 64 位浮点数的复数。