Go语言基础之定义变量

方式一:使用var关键字,函数内 包内均可使用

var a,b bool

var a,b string="hello","world"

var a,b,c=5,"hello",true

var(

  a="hello",

  b="world"

  c=5

  d=true

)

 

方式二:使用:=定义变量,只能用于函数内

a,b,c:=5,"hello",true

 

说明:

在相同的代码块中,我们不可以再次对于相同名称的变量使用初始化声明,例如:a := 20 就是不被允许的,编译器会提示错误 no new variables on left side of :=

如果你在定义变量 a 之前使用它,则会得到编译错误 undefined: a

如果你声明了一个局部变量却没有在相同的代码块中使用它,同样会得到编译错误,a declared and not used

 

并行赋值

 a, b, c := 5, 7, "abc"右边的这些值以相同的顺序赋值给左边的变量,所以 a 的值是 5, b 的值是 7,c 的值是 "abc"。这被称为 并行 或 同时 赋值。

如果你想要交换两个变量的值,则可以简单地使用 a, b = b, a,两个变量的类型必须是相同

并行赋值也被用于当一个函数返回多个返回值时,比如这里的 val 和错误 err 是通过调用 Func1 函数同时得到:val, err = Func1(var1)。

posted @ 2022-04-19 21:57  我要的我现在就要  阅读(411)  评论(0)    收藏  举报