如果你是刚学习go语言,那么你一定被iota困扰过。本文就给大家详细讲解一下iota的使用方法。
首先我们先来了解一下iota这个单词。他并不是某一串英文字母的缩写。而是
希腊字母中I的读音 =》【yota】,
英文单词的读音 =》【ai'outa】
英文单词的意思 =》 微小的量
那我们如何使用呢?
iota的方法是用来批量声明常量,我们声明的第一个常量必须要初始化,而后续声明的则不需要。
正常我们声明常量的话是这样的。
const a,b,c = 1 ×
const a,b,c = 1,2,3 ✓
如果我们批量声明的话是这样的。
const (a = 0, b c) 打印结果为 a = 0, b = 0, c = 0
那么如果我们想让数据变成像第一个用例一样为 1, 2, 3这种升序赋值呢?
那我们就可以使用本文中的主角iota了。
使用的用咧如下:
const (a = iota b c d ) 打印的结果为 a = 0, b = 1, c = 2, d = 3。
通过这个用例我们可以知道iota在Go程序的编译时是可以修改常量值的。默认的起始值为0。常量每次声明一个,iota就会迭代一次。相当于 +1。
运用iota就相当于使用常量迭代器来初始化常量的值。
同时我们需要注意一下iota的使用。
const (a = iota b = iota c)的结果与 const (a = iota b c)的使用并无任何区别。
而 const(a = 2 b = iota c)的结果为 a = 2, b = 1, c = 2。
从上面的结果我们可以知道,无论iota赋值在哪里都是从0开始,而不受到之前的值所影响。
而我们使用const (a = iota _ b _ c) 来迭代数据,a b c 的结果分别为 0,2,4。
所以我们只需要记住,使用iota来处理数据,他只与数据赋值的位置顺序有关!
下面我们来举一个小例子更加巩固一下iota!
type Weekday int
const (
SUN = 0 Weekday = iota
MON
TUE
WED
THU
ERI
SAT
)
fmt.println(SUN, MON, TUE, WED, THU, FRI, SAT)
所打印的结果为0, 1, 2, 3, 4, 5, 6
以上就是iota在我们编写go语言中需要注意的内容了,iota其实还比较简单。只是其他编程语言中并没有这个关键字。