go语言=和:=

Go语言:https://golang.org/

Go语言中文网:https://studygolang.com/

go语言变量使用注意事项:

 变量不可重复定义,重复定义会报错
 
 变量定义未使用,会报错

# =和:=区别

":=为一个新的变量完成声明以及初始化的工作

i := 1

等价于

var i = 1

# 变量重复定义会报错

package main
import "fmt"

func main() {
var i=1
i:=2
var k=2
fmt.Println(i,k)
}

C:\Go\www>go build dengyu.go
# command-line-arguments
.\dengyu.go:6:3: no new variables on left side of :=

# 变量定义未使用会报错

package main
import "fmt"

func main() {
var i=1
var k=2
fmt.Println(i)
}

C:\Go\www>go build dengyu.go
# command-line-arguments
.\dengyu.go:6:6: k declared and not used

# :=只能用在函数体中

它的一个重要用途是用在ifforswitch语句的初始化,使变量成为一个“临时变量”,也就是变量的作用域仅限于这条语句。如下例所示:

package main
import "fmt"

func main() {
   for  j := 3; j <= 5; j++ {
       fmt.Println(j)
   }
   fmt.Println(j)
}

C:\Go\www>go build dengyu.go
# command-line-arguments
.\dengyu.go:10:17: undefined: j


(完)