测试开发技术网站
博客
设计
设计
开发
Python
测试
unittest
运维
Linux基础应用
CI/CD
CI/CD
数据库
数据库
云计算
云计算
云原生
云原生
爬虫
爬虫
数据分析
数据分析
人工智能
人工智能
登录
注册
Golang基础----Golang中的变量
收藏本文
作者:redrose2100 类别: 日期:2022-09-04 16:13:53 阅读:821 次 消耗积分:0 分
[TOC] # 一、变量声明 ## 1.1 声明一个变量 Go 语言中声明变量使用关键字var,然后变量名,最后变量类型,即 ```bash var 变量名 变量类型 ``` 如: ```bash var name string var age int var isTrue bool ``` ## 1.2 批量声明变量 Go 语言中可以一次性声明多个变量,使用一个 var 关键字,把变量写到一对小括号中,如下: ```bash var ( name string age int isTrue bool ) ``` # 二、变量的初始化 ## 2.1 声明变量默认的初始化值 Go 语言中在声明变量的时候,如果不对变量赋值 Go 语言默认会对变量进行初始化,比如字符串类型默认初始化值为 “”,整型变量默认初始化值为0,布尔类型默认初始化值为false,切片、函数、指针类型变量默认初始化值为 nil,如下: ```bash package main import "fmt" func main() { var name string var age int var isTrue bool fmt.Println(name) fmt.Println(age) fmt.Println(isTrue) } ``` 执行结果为: ```bash 0 false ``` ## 2.2 变量声明时赋值 变量声明时赋值格式如下: ```bash var 变量名 变量类型 = 变量赋值表达式 ``` 如下: ```bash package main import "fmt" func main() { var name string = "Jack" var age int =20 var isTrue bool = true fmt.Println(name) fmt.Println(age) fmt.Println(isTrue) } ``` 执行结果为: ```bash Jack 20 true ``` ## 2.3 类型推导 变量在声明时如果直接赋值可以不指定变量类型,此时 Go 语言会自动从变量的赋值中推导出变量的类型,格式如下: ```bash var 变量名 = 变量值 ``` 如下: ```bash package main import "fmt" func main() { var name = "Jack" var age =20 var isTrue = true fmt.Println(name) fmt.Println(age) fmt.Println(isTrue) } ``` 执行结果如下: ```bash Jack 20 true ``` ## 2.4 一次性给多个变量赋值 Go 语言支持一次性对多个变量进行赋值,如下: ```bash package main import "fmt" func main() { var name, age, isTrue = "Jack", 20, true fmt.Println(name) fmt.Println(age) fmt.Println(isTrue) } ``` 执行结果如下: ```bash Jack 20 true ``` # 三、短变量声明 在 Go 语言中,可以通过 := 运算符对变量进行声明,从而不需要使用var关键字,这里需要注意的是,这种用法只能在函数内使用,在函数外是不可以这么使用的,使用格式如下: ```bash 变量名 := 变量值 ``` 如下: ```bash package main import "fmt" func main() { name := "Jack" age := 20 isTrue := true fmt.Println(name) fmt.Println(age) fmt.Println(isTrue) } ``` 执行结果如下: ```bash Jack 20 true ``` # 四、匿名变量 因为 Go 语言中,声明的变量必须使用,因此,当调用函数有多个返回值,匿名变量就很重要了,在 Go 语言中,匿名变量使用 _ 表示 如下: ```bash import "fmt" func getNameAndAge()(string,int){ return "Jack", 20 } func main() { name, _ := getNameAndAge() fmt.Println(name) } ``` 执行结果为: ```bash Jack ``` ![](https://redrose2100.oss-cn-hangzhou.aliyuncs.com/img/dbd3b338-e431-11ed-9bcd-0242ac110004.png)
始终坚持开源开放共享精神,同时感谢您的充电鼓励和支持!
版权所有,转载本站文章请注明出处:redrose2100, http://blog.redrose2100.com/article/367
上一篇:
Pytest----内置标签skip和skipif的使用方法
下一篇:
Golang基础----Golang中的常量
搜索
个人成就
出版书籍
《Pytest企业级应用实战》
测试开发技术全栈公众号
测试开发技术全栈公众号
DevOps技术交流微信群
加微信邀请进群
常用网站链接
开源软件洞察
云原生技术栈全景图
Python语言官方文档
Golang官方文档
Docker官方文档
Jenkins中文用户手册
Scrapy官方文档
VUE官方文档
Harbor官方文档
openQA官方文档
云原生开源社区
开源中国
Kubernetes中文文档
Markdown语法官方教程
Kubernetes中文社区
Kubersphere官方文档
BootStrap中文网站
JavaScript中文网
NumPy官方文档
Pandas官方文档
GitLink确实开源网站
数据库排名网站
编程语言排名网站
SEO综合查询网站
数学加减法练习自动生成网站
Kickstart Generator
文章分类
最新文章
最多阅读
特别推荐
×
Close
登录
注册
找回密码
登录邮箱:
登录密码:
图片验证码:
注册邮箱:
注册密码:
邮箱验证码:
发送邮件
注册邮箱:
新的密码:
邮箱验证码:
发送邮件