go语言学习笔记 — 基础 — 基本语法 — 常量与变量 — 常量变量的声明:单个变量的声明与赋值
Posted Locutus
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go语言学习笔记 — 基础 — 基本语法 — 常量与变量 — 常量变量的声明:单个变量的声明与赋值相关的知识,希望对你有一定的参考价值。
变量来源于数学,是计算机语言中储存计算结果或表示值的抽象概念,变量可以通过变量名访问。变量的功能是存储用户的数据。不同的逻辑有不同的对象类型,也就有不同的变量类型。
经过半个多世纪的发展,编程语言已经形成一套固定的类型,这些类型在不同的编程 语言中基本是相通的。常见变量的数据类型有: 整型、浮点型、布尔型、结构体等。Go语言的每一个变量都拥有自己的类型,必须经过声明才能使用。
Go语言变量名由字母、数字、下划线组成,其中首个字母不能为数字。
1. 声明变量
声明变量的一般形式是使用var关键字:var identifier type
第一种,使用短变量声明并初始化。在主干/条件分支、函数中,指定变量类型,声明后若不赋值,则使用变量默认值。(常用)
// 变量的声明格式:var <变量名称> <变量类型>
// 变量的赋值格式:<变量名称> = <表达式>
var v_name v_type
v_name = value
// 例如
var a int
a = 10
第二种,在声明变量时赋值(用于全局变量)
var <变量名称> [变量类型] = <表达式>
// 例如
var b int = 321
第三种,省略变量类型,由编译器推断
(用于类型可变的变量)
var v_name = value
// 例如
var b = 10
第四种,最简写法
(用于在声明同时,赋初值)
v_name := value
// 例如
c := 10
最简写法的形式在开发中例子较多。net.Dial按指定协议和地址发起网络连接,这个函数有两个返回值:一个是连接对象,一个是err对象。下面分别用最简写法和标准变量声明格式示例:
conn, err = net.Dial("tcp", "127.0.0.1:8080)
var conn net.Conn
var err error
package main
import (
"fmt"
)
func main() {
d := false
fmt.Println(d)
}
注意,:=左侧的变量不应该是已经声明过的,否则会导致编译错误。
2. 匿名变量,没有名字的变量
在使用多重赋值时,如果不需要在左值中接收变量,可以使用匿名变量。匿名变量的表现是一个"_"下划线,在使用匿名变量时,只需要在声明变量的地方,使用下划线替换即可。
pacage main
func GetData() (int, int) {
return 100 , 200
}
func main() {
a, _ := GetData()
_, b := GetData()
fmt.Println(a, b)
}
// 100 200
匿名变量不占用命名空间,不会分配内存。匿名变量与匿名变量之间也不会因为多次声明而无法使用。
3. Tips
:=只能在函数内部使用,如果声明全局变量,还是需要使用var关键字。 golang中引入:=是为了减少一些临时变量的定义,所以一个好的编码习惯是使用:=
来声明临时变量,而对于一个函数中常用变量还是使用var进行声明。
以上是关于go语言学习笔记 — 基础 — 基本语法 — 常量与变量 — 常量变量的声明:单个变量的声明与赋值的主要内容,如果未能解决你的问题,请参考以下文章
go语言学习笔记 — 基础 — 基本语法 — 常量与变量 — 常量变量的声明:单个变量的声明与赋值
go语言学习笔记 — 基础 — 基本语法 — 常量与变量 — 变量的数值类型转换
go语言学习笔记 — 基础 — 基本语法 — 常量与变量 — 常量变量的声明:变量初始化声明和变量赋值
go语言学习笔记 — 基础 — 基本语法 — 常量与变量 — 常量变量的声明:多个变量的初始化声明与赋值