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)
}
相关推荐
玩转单片机与嵌入式8 分钟前
玩转边缘AI(TInyML):需要掌握的C++知识汇总!
开发语言·c++·人工智能
茉莉玫瑰花茶41 分钟前
Qt 信号与槽 [ 1 ]
开发语言·数据库·qt
刀法如飞1 小时前
Go数组去重的20种实现方式,AI时代解决问题的不同思路
后端·算法·go
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题】【Java基础篇】第30题:JDK动态代理和CGLIB动态代理有什么区别
java·开发语言·后端·面试·代理模式
swipe1 小时前
别再把 AI 聊天做成纯文本:从 agui 这个前后端项目,拆解“可感知工具调用”的流式 AI UI
后端·langchain·llm
GetcharZp2 小时前
GitHub 爆火!纯 Go 编写的文件同步神器 Syncthing,凭什么成为程序员的标配?
后端
hERS EOUS2 小时前
SpringBoot 使用 spring.profiles.active 来区分不同环境配置
spring boot·后端·spring
LucianaiB2 小时前
我用飞书多维表做了一个 AI 活动推荐智能体:每天自动催我别错过截止日期!
后端
张健11564096482 小时前
临界区和同一线程上锁
java·开发语言·jvm
头发够用的程序员2 小时前
C++和Python面试经典算法汇总(一)
开发语言·c++·python·算法·容器·面试