当前位置:网站首页>Go----Go语言中的变量使用方法
Go----Go语言中的变量使用方法
2022-07-26 21:11:00 【redrose2100】
一、Go语言中变量简介
变量是计算机语言中能储存计算结果或能表示值的抽象概念。不同的变量保存的数据类型可能会不一样。
二、Go语言中变量的使用方法
2.1 声明变量
Go语言中的变量需要声明后才能使用,同一作用域内不支持重复声明。 并且Go语言的变量声明后必须使用。
声明变量的语法
var identifier type
其中:
var:声明变量关键字
identifier:变量名称
type:变量类型
例如
package main
import "fmt"
func main() {
var name string
var age int
var ok bool
}
2.2 批量声明
使用一个var关键字,把一些变量写在一个括号()里
package main
func main() {
var (
name string
age int
ok bool
)
}
2.3 变量的初始化
Go语言在声明变量的时候,会自动对变量对应的内存区域进行初始化操作。每个变量会被初始化成其类型的默认值,例如: 整型和浮点型变量的默认值为0。 字符串变量的默认值为空字符串“”。 布尔型变量默认为false。 切片、函数、指针变量的默认为nil。
变量初始化语法
var 变量名 类型 = 表达式
例如
package main
func main() {
var name string = "老郭"
var site string = "www.duoke360.com"
var age int = 30
}
2.4 类型推导
我们在声明变量时,可以根据初始化值进行类型推导,从而省略类型。
package main
func main() {
var name = "老郭"
var site = "www.duoke360.com"
var age = 30
}
2.5 初始化多个变量
可以一次初始化多个变量,中间用逗号分隔。
package main
func main() {
var name, site, age = "老郭", "www.duoke360.com", 30
}
2.6 短变量声明
在函数内部,可以使用 :=运算符对变量进行声明和初始化。
package main
func main() {
name := "老郭"
site := "www.duoke360.com"
age := 20
}
注意:这种方法只适合在函数内部,函数外面不能使用。
2.7 匿名变量
如果我们接收到多个变量,有一些变量使用不到,可以使用下划线_表示变量名称,这种变量叫做匿名变量。例如:
package main
import "fmt"
func getNameAndAge() (string, int) {
return "老郭", 30
}
func main() {
name, _ := getNameAndAge()
fmt.Printf("name: %v\n", name)
}```
边栏推荐
猜你喜欢

flask 源码启动阶段

LDAP -- realize unified login management of users

Pytorch 使用RNN模型构建人名分类器

JDBC summary

Can I view the history in the "stealth" mode of the secure browser?

Basic operation of (C language) files

OPPO 自研大规模知识图谱及其在数智工程中的应用

也谈数据治理

FreeRTOS personal notes - Software Timer

Summer vacation daily question week 7:7.18 - 7.24
随机推荐
7、 Wechat applet running error: error: illegal appid, invalid appid
Supplement - nonlinear programming
A bowl of noodles in a dream
Pytorch torch.add() torch.add_() 用法
Drag and drop table rows
Pytoch squeeze() unsqueeze() usage
深入源码剖析String类为什么不可变?(还不明白就来打我)
Technology sharing | do you know the functions of the server interface automated testing and requests library?
Arm Mali GPU的噩梦:三星、华为纷纷转向自研!
补充—非线性规划
按关键字搜索易贝商品 API
Samsung releases 108million pixel image sensor isocell bright HMX, and Xiaomi will launch
Thorough load balancing
逻辑漏洞----任意账号注册
Search Yiwu shopping (PAI Li Tao) API by image
VI and VIM text editors
Logical vulnerability - arbitrary account registration
日本批准向韩出口EUV光刻胶,三星、SK海力士危机或将缓解
成功上岸了自动化测试岗,最高月薪15.4K,自己真棒~
Solution to the problem of sticking and unpacking TCP