GO语言的变量与常量

1.变量

go是一个静态语言

  • 变量必须先定义后使用
  • 变量必须要有类型

定义变量的方式:

var 名称 类型

var 名称 =值

名称 :=值

例如:

复制代码
var num int

这样就存了一个num类型为int的变量

复制代码
var num =1

上面使用简化的定义通过num自动判断后面的类型为int并赋值为1

复制代码
 num :=1

第三种方式就是使用这种方式赋值 使用冒号加等于赋值。

定义变量多个还可以使用这种方式

复制代码
var (
    name="make"
    age=18
    ok bool
    
)

注意:定义局部变量可以不使用,但是局部变量必须使用,定义了不使用会报错。

多变量赋值

复制代码
var user1,user2,user3="hello",1,"hello3"

2.常量

常量,在定义的时候需要指定,并且不能修改。

const 名称 类型 =值

例如π

复制代码
const PI float32 =3.1415926

注意: 常量使用大写

复制代码
package main

import "fmt"

func main() {
	const (
		x int = 16
		y
		s = "abc"
		z
	)
	fmt.Println(x, y, s, z)
}
输出:
16 16 abc abc

由此可见y和z虽然没有赋值,但是它是自动集成上面的值。

3.iota

iota可以认为是一个特殊的常量。

复制代码
package main

import "fmt"

func main() {
	const (
		ERR1  = iota
		ERR2     = iota
		ERR3     = iota
		ERR4     = iota
	)
	fmt.Println(ERR1, ERR2, ERR3, ERR4)
}
输出:
0 1 2 3

说明iota是从0开始递增的数据。

复制代码
package main

import "fmt"

func main() {
	const (
		ERR1  = iota
		ERR2     
		ERR3     
		ERR4   
	)
	fmt.Println(ERR1, ERR2, ERR3, ERR4)
}
输出:
0 1 2 3

这样iota计数器会一直递增。

4.匿名变量

定义:

var _ 类型

复制代码
package main

func test() (int, bool) {
	return 1, true
}

func main() {
	var _ int
	_, ok := test()
	if ok {

	}
}

例如这样一段程序,我需要调用test中获取bool的值,我不需要关心int的值,我只想获取bool的值所以匿名变量的作用就体现出来了。

相关推荐
萧瑟余晖5 分钟前
Java深入解析篇三十之Java日志框架
java·开发语言
Herbert_hwt19 分钟前
【C语言基础】常量、选择结构与运算符全解析
c语言·开发语言·算法
运维开发笔记29 分钟前
3.6 Go defer 语句学习笔记
golang
苏三说技术31 分钟前
为什么越来越多人用 Pi ? - 苏三说技术
后端
AI视觉网奇35 分钟前
动作识别 视频理解大模型
开发语言·python·音视频
YHL42 分钟前
🚀 SSE 服务器发送事件与 BFF 层实战
前端·后端
星火10241 小时前
【LangChain4j系列05】RAG 检索增强生成完整指南
人工智能·后端
技术长镜头1 小时前
别再只说“走 B+Tree”:一条 SQL 在 InnoDB 中的完整寻址过程
后端·mysql
SomeB1oody1 小时前
【RustyML入门】3.8. 正则化与归一化层
开发语言·后端·机器学习·rust·教程
__zRainy__1 小时前
Node系列 · Node基础:全局变量与全局对象
开发语言·前端·javascript