GO语言变量声明的方式

1、指定变量类型,声明后如果不做赋值,那么使用默认值

1

2

//没有进行赋值,但是指明了是什么类型、go会自动加上空值。

var a string

2、不指定变量类型,需要进行赋值操作。

1

2

//可以不指定变量类型,通过变量值,go会自行判断该变量的类型。

var a=1

3、不使用var关键字,直接:=对变量进行赋值操作。

扫描二维码关注公众号,回复: 14647310 查看本文章

1

2

//这种方式是省略了var,但是这种方式能对新的变量使用,对已经声明的变量使用会报错。

a:=1

注意:三种变量的声明形式的作用都是一样的,要么赋值可自动判断其类型,要么不赋值,指定变量类型,就这么两点。还需要注意的是,go的变量是如果被声明了,那么必须使用,不然会报错,如果不想使用可以加上_=varName,表示为已抛弃的变量。

1

2

3

4

//已声明,但未使用

var a=1

//标识为已抛弃的变量。

_=a

4、go的变量在已经被声明后,是不能使用:=再次赋值的。

1

2

3

//这样是错误的

var a=1

a:=2

但是可以使用=为已声明的变量赋新的值。

1

2

3

//这样做是可以的。

var a=1

a=2

而且如果变量值没被使用,那么请加上以抛弃的标识。

1

_=a

5、go可以直接声明多个变量,通过函数可以返回多个返回值,比如:

1

2

3

4

5

6

7

8

9

10

//一次性声明所有的变量类型为string类型

var name1,name2,name3 string

//函数返回多个返回值

func getName(name1,name2,name3,name4){

    return "aa","bb","cc","dd"

}

//返回多个返回的值的函数需要用多个变量进行接受

var a, b, c, d = getName()

6、go可使用var关键字声明全局变量,但是:=这种方式是不能用在全局变量中的。:=只能用在函数体内部。  

1

2

3

4

5

6

7

var (

    a int

    b bool

    xx,yy,dd string="xx","yy","dd"

    //这里省略变量类型也是可以的。

    zz,aa="zz","aa"

)

比如像这样,这样做会报语法错误

1

2

3

var(

    a:=1

)

1

syntax error: unexpected :=

猜你喜欢

转载自blog.csdn.net/fing_com/article/details/118247487