類型 大小 默認值
bool 1bits false
int8 8bits 0
int16 16bits 0
int32 32bits 0
int64 64bits 0
float32 32bits 0
float64 64bits 0
string ""
byte,這個等同於int8,屬於它的別名
int,沒有顯示的聲明int是多少位的,那麼它會根據平臺來自行決定,如32位的系統int就是32位的,64位的系統int就是64位的。 spa
Go語言是強類型語言,但它的變量聲明比較靈活。
var 變量名 類型 = 值
var 變量名 = 值
變量名 := 值
如: code
var a int = 1 var b = 2 c := 3 var a, b int = 1, 2 var c, d = 3, 4 e, f := 4, 5
Go語言不支持不一樣類型間的隱式轉換,如如下代碼片段編譯器會報出invalid operation: a + b (mismatched types int32 and int64)
編譯器
var a int32 = 10 var b int64 = 20 c := a + b fmt.Println(c)
因此要想讓不一樣類型間進行計算,須要進行強制轉換 string
var a int32 = 10 var b int64 = 20 c := int64(a) + b fmt.Println(c)
const能夠聲明一個常量,也能夠當作枚舉來使用 it
const a int = 100 const b = 200 const ( APPLE = iota ORANGE = iota BANANA = iota )iota能夠用來表明枚舉值,從0開始,往下每次會+1,上面的APPLE = 0, ORANGE = 1, BANANA = 2。也能夠只寫一個iota,下面的都省略,效果與上面的同樣。
const a int = 100 const b = 200 const ( APPLE = iota ORANGE BANANA )