二. Go語言數據類型

        在 Go 編程語言中,數據類型用於聲明函數和變量。數據類型的出現是爲了把數據分成所需內存大小不同的數據,編程的時候需要用大數據的時候才需要申請大內存,就可以充分利用內存。Go 語言的數據類型總體分爲以下4類:

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

其中,整形又可細分爲: 

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

它們的表示範圍還可以通過編程的方式打印出來:

package main

import (
	"fmt"
	"math"
)

func main() {
	fmt.Println(math.MinInt8, math.MaxInt8)
	fmt.Println(math.MinInt16, math.MaxInt16)
	fmt.Println(math.MinInt32, math.MaxInt32)
	fmt.Println(math.MinInt64, math.MaxInt64)

	fmt.Println(math.MaxUint8)
	fmt.Println(math.MaxUint16)
	fmt.Println(math.MaxUint32)

	fmt.Println(math.MaxFloat32)
	fmt.Println(math.MaxFloat64)
}

 運行結果:

浮點型又可細分爲:

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

其他數字類型還包括:

序號 類型和描述
1 byte:類似 uint8
2 rune:類似 int32
3 uint:32 或 64 位
4 int:與 uint 一樣大小
5 uintptr:無符號整型,用於存放一個指針
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章