Go數(shù)據(jù)類型
Go語言將數(shù)據(jù)類型分為四類
- 基礎(chǔ)類型
- 復(fù)合類型
- 引用類型
- 接口類型
基礎(chǔ)類型
- 數(shù)字
- 字符串
- 布爾
整型
Go語言提供有符號和無符號類型的整數(shù)運(yùn)算
- 有符號
- int8、int16、int32、int64
- 無符號
- uint8、uint16、uint32、uint64
在Go語言中,
- uint8、uint16、uint32、uint64
- %取模運(yùn)算符的符號和被取模數(shù)的符號一致,如-5%3和-5%-3結(jié)果都是2
- /除法運(yùn)算符的行為則依賴于操作數(shù)是否全為整數(shù),如5.0/4.0為1.25,但是5/4結(jié)果則為1,整數(shù)除法會向著0方向截斷余數(shù)
浮點(diǎn)數(shù)
- 浮點(diǎn)數(shù)
- float32、float64
復(fù)合類型
- 數(shù)組
- 結(jié)構(gòu)體
- 通過組合簡單類型,表達(dá)更加復(fù)雜的數(shù)據(jù)結(jié)構(gòu)
引用類型
- 指針
- 切片
- 字典
- 函數(shù)
- 通道
- 對程序中一個變量或狀態(tài)的間接引用,對任一引用類型的數(shù)據(jù)的修改都會影響所有該引用的拷貝
map(字典)
var args map[string]int
args := map[string]int
args := map[string]int{
"one": 1,
"two": 2,
}
- 通過key訪問map
- 如果key在map中存在,結(jié)果為key對應(yīng)的value
- 如果key不存在,結(jié)果為value對應(yīng)類型的零值