跳转至

变量、常量、类型与零值

Go 是静态类型语言,支持类型推断。函数内部可用短变量声明 :=;包级变量不能使用 :=

var count int = 3
name := "Jie"
const maxRetry = 3

常用基本类型包括 boolstring、整数类型和浮点类型。整数大小依赖具体类型;处理外部协议或存储格式时,优先选择明确宽度的 int64uint32 等类型。

零值

未显式初始化的变量有零值:数值为 0,布尔值为 false,字符串为 "",指针、slice、map、channel、函数和 interface 为 nil

var total int       // 0
var enabled bool    // false
var title string    // ""
var tags []string   // nil,但可安全 range 和 append

读取 nil map 没问题,但向 nil map 写入会 panic;写入前使用 make 或字面量初始化。

scores := make(map[string]int)
scores["Alice"] = 90

参考

评论