05:go语言常量

目录

go语言常量

定义常量的语法

iota

实例

使用 _ 跳过某些值

iota声明中间插队


go语言常量

常量,就是在程序编译阶段就确定下来的值,而程序在运行时则无法改变该值。

在go程序中,常量可以是数值类型(包括整型、浮点型和复数类型)、布尔类型、字符串类型等

定义常量的语法

定义一个常量使用const关键字 语法格式如下

const constantName [type]= value

const : 定义常量关键字

constantName : 常量名字

type : 常量类型

value : 常量的值

package main

func main() {
	const PI float64 = 3.14
	const PI2 = 3.1415 // 可以省略类型

	const (
		width  = 100
		height = 200
	)

	const i, j = 1, 2 // 多重赋值
	const a, b, c = 1, 2, "foo"
}

const 同时声明多个常量时,如果省略了值则表示和上面一行的值相同

package main

import "fmt"

func main() {
	const (
		a1 = 100
		a2
		a3
	)

	fmt.Printf("a1: %v\n", a1)
	fmt.Printf("a2: %v\n", a2)
	fmt.Printf("a3: %v\n", a3)
}

运行结果:

a1: 100
a2: 100
a3: 100

iota

iota 比较特殊,可以被任务是一个可以被编译器修改的常量,它默认从0开始,每调用一次加1,遇到const关键字时被重置为0

实例

package main

import "fmt"

func main() {
	const (
		a1 = iota
		a2 = iota
		a3 = iota
	)

	fmt.Printf("a1: %v\n", a1)
	fmt.Printf("a2: %v\n", a2)
	fmt.Printf("a3: %v\n", a3)
}

运行结果:

a1: 0
a2: 1
a3: 2

使用 _ 跳过某些值

package main

import "fmt"

func main() {
	const (
		a1 = iota
		_
		a2 = iota
	)

	fmt.Printf("a1: %v\n", a1)
	fmt.Printf("a2: %v\n", a2)
}

运行结果

a1: 0
a2: 2

iota声明中间插队

package main

import "fmt"

func main() {
	const (
		a1 = iota
		a2 = 100
		a3 = iota
	)

	fmt.Printf("a1: %v\n", a1)
	fmt.Printf("a2: %v\n", a2)
	fmt.Printf("a3: %v\n", a3)
}

运行结果

a1: 0
a2: 100
a3: 2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值