登录
首页 >  Golang >  Go问答

Go 中的 := 和 = 有什么区别?

来源:Golang技术栈

时间:2023-04-09 15:28:36 193浏览 收藏

怎么入门Golang编程?需要学习哪些知识点?这是新手们刚接触编程时常见的问题;下面golang学习网就来给大家整理分享一些知识点,希望能够给初学者一些帮助。本篇文章就来介绍《Go 中的 := 和 = 有什么区别?》,涉及到golang,有需要的可以收藏一下

问题内容

我是 Go 编程语言的新手。

我在 Go 中注意到一些奇怪的东西:我认为它在 Python 中使用:=和替代,但是当我在 Go 中使用时它也可以工作。=``=

:=和 和有什么不一样=

正确答案

=是赋值。更多关于 Go 中的作业:作业

=和之间的细微差别:==在变量声明中使用时。

Go 中变量声明的一般形式是:

var name type = expression

上面的声明创建了一个特定类型的变量,为其附加了一个名称,并设置了它的初始值。 thetype或 the= expression可以省略,但不能同时省略。

例如:

var x int = 1
var a int
var b, c, d = 3.14, "stackoverflow", true

:=被称为short variable declaration形式

name := expression

并且名称的类型由表达式的类型决定

注意: := 是一个声明,而是=一个赋值

因此,一个简短的变量声明必须 至少声明一个新变量 。这意味着一个简短的变量声明不一定在其左侧声明所有变量,当其中一些变量已经在同一个词法块中声明时,然后:=就像对这些变量的赋值一样

例如:

 r := foo()   // ok, declare a new variable r
 r, m := bar()   // ok, declare a new variable m and assign r a new value
 r, m := bar2()  //compile error: no new variables

此外,:=可能只出现在函数内部。在某些上下文中,例如“if”、“for”或“switch”语句的初始化器,它们可用于声明局部临时变量。

更多信息:

变量声明

短变量声明

以上就是《Go 中的 := 和 = 有什么区别?》的详细内容,更多关于golang的资料请关注golang学习网公众号!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>