一种变量是用于保存值的存储位置或占位符。它使我们能够操纵和检索存储的信息。在Golan中有两种声明变量的方法, 如下所示:
使用var关键字
使用短声明运算符(:=)
var关键字和短声明运算符之间的区别
var关键字 | 短声明运算符 |
---|---|
var是Golang中存在的词汇关键字。 | :=被称为短声明运算符。 |
它用于声明和初始化函数内部和外部的变量。 | 它仅在函数内部用于声明和初始化变量。 |
使用此变量通常具有包级别或全局级别范围。它也可以具有本地范围。 | 在这里, 变量仅具有局部作用域, 因为它们仅在函数内部声明。 |
变量的声明和初始化可以分别进行。 | 变量的声明和初始化必须同时进行。 |
可以将类型和变量声明一起放置。 | 无需放置类型。如果你这样做, 将会出错。 |
//Go program to show the use of var lexical
//keyword and short declaration operator
package mainimport (
"fmt"
)func main() {//using var keyword to declare
//and initialize the variable
var myvariable1 = 100fmt.Println(myvariable1)//using var keyword to declare
//the variable along with type
var myvariable2 intfmt.Println(myvariable2)//using short variable declaration
myvariable3 := 200fmt.Println(myvariable3)}
【Golang中var关键字和短声明运算符之间的区别】输出如下:
100
0
200
示例2:在此程序中, 你可以看到myvariable1被声明为变种关键字, 它具有全球范围.myvariable2也可以使用var关键字和int类型进行声明, 但尚未完成初始化。因此它将采用int类型的默认值, 即零(你可以在输出中看到)。myvariable3使用短变量声明运算符声明和初始化, 并且具有局部范围。
//Go program to show the use of var lexical
//keyword and short declaration operator
package mainimport (
"fmt"
)//using var keyword to declare
//and initialize the variable
//it is package or you can say
//global level scope
var myvariable1 = 100func main() {//accessing myvariable1 inside the function
fmt.Println(myvariable1)//using var keyword to declare
//the variable along with type
var myvariable2 intfmt.Println(myvariable2)//using short variable declaration
myvariable3 := 200fmt.Println(myvariable3)}
输出如下:
100
0
200
示例3:在此程序中, 你可以看到myvariable1被声明为变种关键字, 它具有全球范围.myvariable2也可以使用var关键字和int类型进行声明, 但尚未完成初始化。因此它将采用int类型的默认值, 即零(你可以在输出中看到)。myvariable3使用不允许在函数外的短变量声明运算符声明和初始化, 这会导致错误。
//Go program to show the use of var lexical
//keyword and short declaration operator
package mainimport (
"fmt"
)//using var keyword to declare
//and initialize the variable
//it is package or you can say
//global level scope
var myvariable1 = 100//using short variable declaration
//it will give an error as it is not
//allowed outside the function
myvariable3 := 200func main() {//accessing myvariable1 inside the function
fmt.Println(myvariable1)//using var keyword to declare
//the variable along with type
var myvariable2 intfmt.Println(myvariable2)fmt.Println(myvariable3)}
错误:
./prog.go:18:1:语法错误:函数主体外的非声明语句
推荐阅读
- CALL和JUMP指令之间有什么区别()
- C#中var和dynamic之间有什么区别()
- C#中系统级别异常和应用程序级别异常之间的区别
- 在kubernetes中使用nfs-provisioner动态存储卷
- Spring认证指南(了解如何使用 Spring 执行表单验证)
- #yyds干货盘点# SAP UI5 batch 请求的响应解析流程分析
- 精简指令集计算机
- 编程语言(JavaC++)先学那个好()
- 兄弟们-加油加油加油,不要放弃!linux命令chmodchown奉上!点赞收藏加关注爱你们哟!