在 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 位浮點數的複數。