基本上我想遍历一个字符串来获取每个字符并用那个字符做一些事情。但是,当我尝试遍历字符串时,我必须为字符索引提供一个变量,为字符本身提供一个变量,即。for pos, char := range myString {*do something*}. 我如何简单地分配字符本身而不必分配索引?
1 回答

白猪掌柜的
TA贡献1893条经验 获得超10个赞
for 循环的range
形式迭代切片或映射。
在切片上进行测距时,每次迭代都会返回两个值:
第一个是切片的索引;
第二个是该索引处元素的副本。
假设我们有一个验证数字是否为 a 的函数prime number
,并且我们有一个包含候选数字的数组,然后我们可以通过两种不同的方式调用该函数:
var prime []int = []int{2, 3, 5, 7, 11, 13, 17, 19, 23}
func TestIsPrimeByValue(t *testing.T) {
for _, item := range prime {
if !IsPrime(item) {
t.Fail()
}
}
}
func TestIsPrimeByIndex(t *testing.T) {
for i := range prime {
if !IsPrime(prime[i]) {
t.Fail()
}
}
}
在第一个循环中,我们正在迭代value数组。
在第二个循环中,我们正在迭代index数组。这是一个例子int。您可以用字符串替换数组并迭代字符串的字节。
- 1 回答
- 0 关注
- 118 浏览
添加回答
举报
0/150
提交
取消