布爾型:bool數組
長度1字節併發
取值範圍:true,falseide
注意:不能夠用數字表明true或false函數
整型:Intui
根據平臺可能爲32爲或64位spa
8位整型:int8/uint8指針
長度:1字節orm
取值範圍:-127~127,0~255blog
byte 字節型 其實就是 uint8的別名接口
16位整型:int16/uint16
長度:2字節
取值範圍:-32768~32768,0~65535
32位整型:int32/uint32
長度:4字節
rune就是int32的別名
浮點型:float32/float64
長度:4字節/8字節
小數位:float32精確到小數點後7位,float64精確到小數點後15位
保存指針的uintptr類型,根據平臺來分爲32位或64位
其餘類型:
array struct string
引用類型:
map slice chan(併發會使用到)
接口類型:interface
函數類型:func (由於函數能夠複製給變量的)
類型零值:
零值並不等於空置,而是當變量被聲明爲某種類型後的默認值,一般狀況下值的類型都爲0,bool爲 false,string爲空字符串,數組的話和數組類型的零值保持一致 [2]int,則數組的初始值爲[0 0]
類型別名:
使用type對類型進行別名
這樣是能夠的,可是不建議這樣使用,type定義一些其餘的別名(type byte64 int64),來使代碼可讀性更強
type定義的類型的別名,其實只是和該類型的結構相同,因此要作類型轉換的時候,仍是須要進行顯式轉換的,而byte rune 的確是uint8 int32,的別名,能夠進行相互轉換
能夠進行轉換:
這樣是沒法進行轉換的
必須作顯式的類型轉換才能夠