现代语言-Go语言入门02

常量和iota

在Go语言中,常量是指程序运行期间不可更改的值,而iota是一个常量生成器,用于生成一组以递增方式定义的常量值序列。

常量的声明语法为:

1
const identifier [type] = value

其中,identifier是常量的名称,type是常量的类型(可选),value是常量的值。

iota是Go语言中的一个特殊常量,它在const关键字出现时被重置为0,然后每当const关键字在新的一行出现时,它就会自增一次。iota通常用于生成一组递增的常量值。
Go语言(也称为Golang)是由Google开发的一种编程语言,其发展历程可以概括如下:

代码示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package main

import "fmt"

// 定义一组常量,每个常量代表一个星期的值
const (
Sunday = iota // iota = 0
Monday // iota = 1
Tuesday // iota = 2
Wednesday // iota = 3
Thursday // iota = 4
Friday // iota = 5
Saturday // iota = 6
)

// 定义一组常量,每个常量的值都是 2 的幂次方
const (
_ = iota // iota = 0,丢弃这个值
KB = 1 << (10 * iota) // iota = 1,KB = 1 << (10 * 1) = 1024
MB = 1 << (10 * iota) // iota = 2,MB = 1 << (10 * 2) = 1048576
GB = 1 << (10 * iota) // iota = 3,GB = 1 << (10 * 3) = 1073741824
TB = 1 << (10 * iota) // iota = 4,TB = 1 << (10 * 4) = 1099511627776
)

func main() {
fmt.Println("Days of the week:")
fmt.Println(Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday)

fmt.Println("2^0 = ", KB)
fmt.Println("2^1 = ", MB)
fmt.Println("2^2 = ", GB)
fmt.Println("2^3 = ", TB)
}

输出结果为:

1
2
3
4
5
6
Days of the week:
0 1 2 3 4 5 6
2^0 = 1
2^1 = 1024
2^2 = 1048576
2^3 = 1073741824

现代语言-Go语言入门02
https://www.eldpepar.com/coding/64773/
作者
EldPepar
发布于
2024年3月13日
许可协议