在 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。
序號 類型和描述
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)
浮點型:
序號 類型和描述
1 float32
IEEE-754 32位浮點型數
2 float64
IEEE-754 64位浮點型數
3 complex64
32 位實數和虛數
4 complex128
64 位實數和虛數
其他數字類型
以下列出了其他更多的數字類型:
序號 類型和描述
1 byte
類似 uint8
2 rune
類似 int32
3 uint
32 或 64 位
4 int
與 uint 一樣大小
5 uintptr
無符號整型,用于存放一個指針
go 1.9版本對于數字類型,無需定義int及float32、float64,系統會自動識別。
~~~
package main
import "fmt"
func main() {
var a = 1.5
var b =2
fmt.Println(a,b)
}
~~~
運行結果
~~~
# go run int.go
1.5 2
~~~
如果加上類型float,會出現如下結果
~~~
# go run int.go
# command-line-arguments
./int.go:4:10: undefined: float
~~~

- Go語言基礎篇
- Go語言簡介
- Go語言教程
- Go語言環境安裝
- Go語言結構
- Go語言基礎語法
- Go語言數據類型
- Go語言變量
- Go語言提高篇
- Go語言實現貪吃蛇
- Go 諺語
- 解決連通性問題的四種算法
- golang 幾種字符串的連接方式
- Go JSON 技巧
- Go += 包版本
- Golang 編譯成 DLL 文件
- Go指南:牛頓法開方
- Go語言異步服務器框架原理和實現
- Golang適合高并發場景的原因分析
- 如何設計并實現一個線程安全的 Map ?(上篇)
- go語言執行cmd命令關機、重啟等
- IT雜項
- IT 工程師的自我管理
- IT界不為人知的14個狗血故事
- Go語言版本說明
- Go 1.10中值得關注的幾個變化
- Golang面試題解析
- Golang面試題
- Golang語言web開發
- golang 模板(template)的常用基本語法
- go語言快速入門:template模板
- Go Template學習筆記
- LollipopGo框架
- 框架簡介
- Golang語言版本設計模式
- 設計模式-單例模式
- Golang語言資源下載
- 公眾賬號
- leaf
- 合作講師
- 公開課目錄