首页  >  文章  >  后端开发  >  可以在没有短声明语法的情况下在 Go 中初始化多个不同类型的变量吗?

可以在没有短声明语法的情况下在 Go 中初始化多个不同类型的变量吗?

DDD
DDD原创
2024-10-30 12:13:03265浏览

 Can You Initialize Multiple Variables of Different Types in Go Without Short Declaration Syntax?

Go 中无短声明语法的多变量初始化

Go 中,可以在一行中声明和初始化多个不同类型的变量不使用短声明语法 (:=)。但是,这需要省略变量的类型。

示例:

<code class="go">var i, s = 2, "hi"
fmt.Println(i, s)</code>

输出(在 Go Playground 上尝试):

2 hi

短变量声明 (:=) 是带有初始化表达式但没有类型的常规变量声明的简写。

语法:

ShortVarDecl = IdentifierList ":=" ExpressionList .

等效语法:

"var" IdentifierList "=" ExpressionList .

限制:

如果不省略类型,则无法在一行中声明多个不同类型的变量。变量声明的语法需要带有表达式列表的标识符列表的单一类型。

结论:

虽然省略类型允许在一行中初始化多个变量,一般建议不同类型使用多行,以提高可读性。或者,您可以在作业右侧显式声明类型:

<code class="go">var i, s = int(2), string("hi")</code>

以上是可以在没有短声明语法的情况下在 Go 中初始化多个不同类型的变量吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn