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的值所以匿名变量的作用就体现出来了。

相关推荐
彭于晏Yan9 分钟前
SpringBoot优化树形结构数据查询
java·spring boot·后端
章丸丸20 分钟前
Tube - Studio Videos
前端·后端
上位机付工27 分钟前
C#与倍福TwinCAT3进行ADS通信
开发语言·c#
练习时长一年31 分钟前
Spring事件监听机制(三)
java·后端·spring
励志不掉头发的内向程序员36 分钟前
STL库——二叉搜索树
开发语言·c++·学习
2301_7813925240 分钟前
用spring框架实现简单的MVC业务
java·后端·spring
phltxy1 小时前
SpringMVC 程序开发
java·后端·spring
AAA修煤气灶刘哥1 小时前
接口又被冲崩了?Sentinel 这 4 种限流算法,帮你守住后端『流量安全阀』
后端·算法·spring cloud
至此流年莫相忘1 小时前
设计模式:模板方法模式
java·开发语言·设计模式