变量
变量的定义和赋值有多种方式
方式1
只定义不赋值,默认为0
1 2 3 4 5 6
| package main
func main() { var a int println("a = %d\n", a) }
|
方式2
1 2 3 4 5 6
| package main
func main() { var a int = 3 println("a = %d\n", a) }
|
方式3
忽略类型,go会自己推断
1 2 3 4 5 6
| package main
func main() { var a = 3 println("a = %d\n", a) }
|
方式4
忽略var关键字
1 2 3 4 5 6
| package main
func main() { a := 2 println("a = %d\n", a) }
|
方式5
多变量声明类似于单变量声明,但是忽略var只能在函数内使用
1 2 3 4 5 6 7 8 9 10 11 12 13
| package main
func main() { var x, y int
var a, b = 345, false
var ( c int = 345 d bool = true ) e, f := 555, "ggg" }
|
常量
常量顾名思义和变量相反,不能改变值。定义和赋值方式和变量类似
1 2 3 4 5 6 7 8
| const t float32 = 234.435435
const u string = "apple"
const ( g = "amd" p = "intel" )
|
iota关键字
iota是increment关键字,可以简化增长数字的定义
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| package main
func main() { const ( a = iota b c d ) println(a, b, c, d) const ( e, f = iota + 1, iota + 2 g, h i, j k, l ) println(e, f) println(g, h) println(i, j) println(k, l) }
|