Golang: Zero Value
Variables declared without an explicit initial value are given their default value.
Default value are different for different types of variables.
The default value for a type is called its “zero value”.
The zero values are:
0
- for numeric types
false
- for boolean type.
""
- (empty string) for string type.
nil
- for pointers, functions, interfaces, slices, channels, and maps.
package main import "fmt" func main() { var i int var f float64 var b bool var str string var sl []int fmt.Printf("%#v\n", i) // 0 fmt.Printf("%#v\n", f) // 0 fmt.Printf("%#v\n", b) // false fmt.Printf("%#v\n", str) // "" fmt.Printf("%#v\n", sl) // []int(nil) // %#v means print in golang syntax }
Reference
The Go Programming Language Specification - The Go Programming Language#The_zero_value
If you have a question, put $5 at patreon and message me.