基本零值

Go 中的變數總是初始化,無論你是否給它們一個起始值。如果沒有給出值,則每種型別(包括自定義型別)都將設定為零值。

var myString string      // "" - an empty string
var myInt int64          // 0 - applies to all types of int and uint
var myFloat float64      // 0.0 - applies to all types of float and complex
var myBool bool          // false
var myPointer *string    // nil
var myInter interface{}  // nil

這也適用於地圖,切片,通道和函式型別。這些型別將初始化為 nil。在陣列中,每個元素被初始化為其相應型別的零值。