Golang之路---02 基础语法——变量

Golang变量

变量的声明

声明变量的一般形式是使用 var 关键字

Go 语言是静态类型语言,编译时,编译器会检查变量的类型,所以要求所有的变量都要有明确的类型。

1 :一个变量单行声明

语法格式:
var name type

var是关键字,name为变量名,type是类型。

使用 var , Go 会对其进行隐式初始化,比如 string 类型就初始化为空字符串,int 类型就初始化为0,float 就初始化为 0.0,bool类型就初始化为false,指针类型就初始化为 nil。

其中,数字类型比较多,默认值都是 0。定义int类型时,默认根据系统类型设置取值范围,32位系统与int32的值范围相同,64位系统与int64的值范围相同。

float32 32位浮点数 精度6位小数

float64 64位浮点数 精度15位小数

若你的右值带有小数点,在不指定类型的情况下,编译器会将你的这个变量声明为 float64,但是很多情况下,我们并不需要这么高的精度.

所以要指定类型, eg: var tes float32 = 0.89

2:多个变量一起声明

适用场景:适合全局变量的声明

go 复制代码
var(
    str_1 string ="test1"
	str_2 string ="沉淀"
	num1 int = 985
	num2 float32= 211.1
   )

3:短类型单个变量声明法

使用 :=

可以声明一个变量,并对其进行(显式)初始化。

(编译器会自动根据右值类型推断出左值的对应类型。)
存在局限性,此种声明方法只能用于函数内部

4.短类型多个变量声明法

go 复制代码
str_4,num3 := "好好学习", 25

//这种方法也可用于变量的交换

num1 := 23
num2 := 46

num2,num1 =  num1,num2

5.匿名变量

又称占位符,空白标识符
用下划线表示

优点:

  1. 无须分配内存,不占用内存空间
  2. 无序为无用的变量名起名
  3. 可在代码中多次声明

使用场景

匿名变量适用于必须接收,但是又不会用到的值。

go 复制代码
func GatData() (string,string){
	return "Golang","more better"
}

func main(){
    a,_ := GatData()
	_,b := GatData() 
	fmt.Println(a,b)
}
相关推荐
郝学胜-神的一滴9 分钟前
Qt 高级编程 042:进度条从入门到自定义美化
开发语言·c++·qt·软件开发·用户界面
鸿芯微控科技18 分钟前
压电纳米定位分辨率怎么测?噪声、带宽、最小可检测位移与Python分析
开发语言·python·噪声分析·压电执行器·纳米定位·位移测量
喵个咪20 分钟前
GoWind Shop 架构剖析:一个 REST 请求穿越三服务 BFF 的七环链路
vue.js·后端·go
喵个咪20 分钟前
GoWind Shop 安全设计:JWT 鉴权、Ent 行级隔离、防篡改审计与四个真实漏洞修复
vue.js·后端·go
喵个咪23 分钟前
GoWind Shop:一个 proto 文件如何生成后端、前端、文档、校验六路代码
vue.js·后端·go
用户77833661321124 分钟前
从 0 搭一个关键词排名监控:核心思路 + 可运行代码
后端·python·api
喵个咪26 分钟前
GoWind Shop 出海实战:多语言商品内容怎么存、怎么录、怎么按 locale 取
vue.js·后端·go
@小匠43 分钟前
Spring Boot Nacos绑定 Map 时中文 key 导致启动失败:一次从复现到源码的排查实录
java·开发语言·前端
Knight_AL43 分钟前
Lombok @Builder 踩坑:build() 前后对象类型不一样
android·java·开发语言
神明不懂浪漫1 小时前
【第五章】队列
开发语言·数据结构·经验分享·笔记·算法