这篇文章主要介绍了golang中"var"与":="的区别是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇golang中"var"与":="的区别是什么文章都会有所收获,下面我们一起来看看吧。
Go语言里面定义变量有多种方式。
使用var
关键字是Go最基本的定义变量方式,有时也会使用到:=
来定义变量。
定义变量
// 定义一个名称为“variableName”,类型为"type"的变量 // var variableName type var number int
定义变量并初始化值
// 初始化“variableName”的变量为“value”值,类型是“type” // var variableName type = value var number int = 10
同时初始化多个变量,又叫平行赋值
/* 定义三个类型都是"type"的变量,并且分别初始化为相应的值 vname1为v1,vname2为v2,vname3为v3 */ // var vname1, vname2, vname3 type = v1, v2, v3 var number1, number2, number3 int = 1, 2, 3
你是不是觉得上面这样的定义有点繁琐?没关系,因为Go语言的设计者也发现了,有一种写法可以让它变得简单一点。我们可以直接忽略类型声明,那么上面的代码变成这样了:
/* 定义三个变量,它们分别初始化为相应的值 vname1为v1,vname2为v2,vname3为v3 然后Go会根据其相应值的类型来帮你初始化它们 */ // var vname1, vname2, vname3 = v1, v2, v3 var number1, number2, number3 = 1, 2, 3
你觉得上面的还是有些繁琐?好吧,我也觉得。让我们继续简化:
/* 定义三个变量,它们分别初始化为相应的值 vname1为v1,vname2为v2,vname3为v3 编译器会根据初始化的值自动推导出相应的类型*/ // vname1, vname2, vname3 := v1, v2, v3 number1, number2, number3 := 1, 2, 3
现在是不是看上去非常简洁了?:=
这个符号直接取代了var
和type
,这种形式叫做简短声明。不过它有一个限制,那就是它只能用在函数内部;在函数外部使用则会无法编译通过,所以一般用var方式来定义全局变量。
换句话说,“:=
”只能在声明“局部变量”的时候使用,而“var”没有这个限制。
关于“golang中"var"与":="的区别是什么”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“golang中"var"与":="的区别是什么”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。