Go 語言數據類型

在 Go 編程語言中,數據類型用於聲明函數和變數。

數據類型的出現是為了把數據分成所需記憶體大小不同的數據,編程的時候需要用大數據的時候才需要申請大記憶體,就可以充分利用記憶體。

Go 語言按類別有以下幾種數據類型:

序號類型和描述
1布爾型
布爾型的值只可以是常量 true 或者 false。一個簡單的例子:var b bool = true。
2數字類型
整型 int 和浮點型 float32、float64,Go 語言支持整型和浮點型數字,並且支持複數,其中位的運算採用補數。
3字串類型:
字串就是一串固定長度的字元連接起來的字元序列。Go 的字串是由單個位元組連接起來的。Go 語言的字串的位元組使用 UTF-8 編碼標識 Unicode 文本。
4派生類型:
包括:
  • (a) 指針類型(Pointer)
  • (b) 數組類型
  • (c) 結構化類型(struct)
  • (d) Channel 類型
  • (e) 函數類型
  • (f) 切片類型
  • (g) 介面類型(interface)
  • (h) Map 類型

數字類型

Go 也有基於架構的類型,例如:int、uint 和 uintptr。

序號類型和描述
1uint8
無符號 8 位整型 (0 到 255)
2uint16
無符號 16 位整型 (0 到 65535)
3uint32
無符號 32 位整型 (0 到 4294967295)
4uint64
無符號 64 位整型 (0 到 18446744073709551615)
5int8
有符號 8 位整型 (-128 到 127)
6int16
有符號 16 位整型 (-32768 到 32767)
7int32
有符號 32 位整型 (-2147483648 到 2147483647)
8int64
有符號 64 位整型 (-9223372036854775808 到 9223372036854775807)

浮點型

序號類型和描述
1float32
IEEE-754 32位浮點型數
2float64
IEEE-754 64位浮點型數
3complex64
32 位實數和虛數
4complex128
64 位實數和虛數

其他數字類型

以下列出了其他更多的數字類型:

序號類型和描述
1byte
類似 uint8
2rune
類似 int32
3uint
32 或 64 位
4int
與 uint 一樣大小
5uintptr
無符號整型,用於存放一個指針