Go 变量
文章目录
前言
变量是计算机语言中能 储存 计算结果或能表示值的抽象概念。不同的变量保存的 数据类型 可能会不一样
提示:以下是本篇文章正文内容,下面案例可供参考
一 声明变量
Go语言中的变量需要 声明后才能使用,同一作用域内不支持重复声明。 并且Go语言的变量 声明后必须使用。Go 中声明变量使用 var
关键字
var identifier Type
var
: 关键字,表示声明变量identifier
: 变量名字Type
:数据类型,这是一种抽象表示,仅作文档说明,代表任意类型
1.1 名称的命名规则
所谓 名字 就是代表程序中预先分配好的 固定大小的内存区域,在 Go 中可以想象它是一个 盒子,用于存放数据。
名字代表的内存区域的大小由它的 数据类型 确定
变量可以有一个 简短的名称 (如 x
和 y
) 或更具描述性的名称 (age
、price
、carname
等)
名称的命名通常需要更具描述性。Go变量命名规则
- 名称必须以 字母 或 下划线 (
_
) 开头。注意, 不能以数字开头 - 名称只能包含字母 数字 字符和 下划线(
a-z
、A-Z
、0-9
和_
) - 名称是 区分大小写(
age
、Age
和AGE
是三个不同的变量) - 名称是 没有长度限制
- 名称中 不能包含空格
- 名称 不能是任何 Go关键字
有些 名字被编程语言赋予了特殊的含义,它们作为语言的重要组成部分被称为 关键字 或 保留字。这些名字不能用于变量的命名
Go语言中有 25 25 25 个关键字
break default func interface select
case defer go map struct
chan else goto package switch
const fallthrough if range type
continue for import return var
此外,Go 语言中还有 37 个保留字
常量: true false iota nil
数据类型: int int8 int16 int32 int64
uint uint8 uint16 uint32 uint64 uintptr
float32 float64 complex128 complex64
bool byte rune string error
内置函数: make len cap new append copy close delete
complex real imag
panic recover
下面列出了一个正确的名字命名
package main
import "fmt"
func main() {
var name string
var age int
var _sys int
}
1.2 多字名称
包含多个单词的变量名可能难以阅读。 你可以使用一些技巧来提高它们的可读性。
驼峰命名法:Go采用的命名规范
除了第一个单词,每个单词都以大写字母开头:
myVariavleName := "John"
帕斯卡命名法
每个单词都以大写字母开头:
MyVariableName := "John"
蛇形命名法
每个单词由一个下划线字符分隔
my_variable_name := "John"
二 批量声明
使用一个 var
关键字,把一些变量写在一个括号()
里
package main
func main() {
var (
name string
age int
ok bool
)
}
三 变量的初始化
Go语言在声明变量的时候,会自动对变量对应的内存区域进行初始化操作。每个变量会被初始化成其类型的默认值,例如:
- 整型和浮点型变量的默认值为
0
。 - 字符串变量的默认值为空字符串
""
。 - 布尔型变量默认为
false
- 切片、函数、指针变量的默认为
nil
初始化 标准语法 如下
var identifier Type - value
变量初始化示例
package main
func main() {
// 变量的初始化
var name string = "杜宇鹏"
var age int = 28
}
3.1 类型推导
如果提供初始值,编译器可以自动从初始值中获取类型信息
package main
func main() {
var name = "杜宇鹏"
var age = 28
var ok = true
}
3.4 初始化多个变量
让编译器进行类型推导,可以一次初始化多个变量
package main
func main() {
/*多变量初始化*/
var name, age, ok = "杜宇鹏", 28, true
}
3.3 短变量声明
在 函数内部,可以使用 :=
运算符对变量进行声明和初始化
package main
func main() {
/*短变量声明*/
name := "杜宇鹏"
age := 28
ok := true
}
使用短变量声明,必须在函数内部。并且必须提供初始值。不提供初始值是不可能进行短变量声明的
四 匿名变量
如果我们需要接收到多个值,有一些值使用不到,可以使用 下划线 _ 表示变量名称,这种变量叫做 匿名变量
package main
import "fmt"
func getNameAndAge() (string, int) {
return "杜宇鹏", 30
}
func main() {
/* 使用匿名变量忽略值 */
name, _ := getNameAndAge()
fmt.Printf("name: %s\n", name)
}
后续我们无法使用
_
获取值,它就像黑洞一样,将数据毁灭了
总结
本节介绍如何在 Go 中声明变量、变量的命名规范,及如何初始化变量的值