登录
首页 >  Golang >  Go问答

如何在 Golang 中迭代字符串并只使用字符而非索引?

来源:stackoverflow

时间:2024-02-28 13:18:29 495浏览 收藏

大家好,今天本人给大家带来文章《如何在 Golang 中迭代字符串并只使用字符而非索引?》,文中内容主要涉及到,如果你对Golang方面的知识点感兴趣,那就请各位朋友继续看下去吧~希望能真正帮到你们,谢谢!

问题内容

基本上,我想迭代一个字符串,获取每个字符并对该字符执行某些操作。然而,当我尝试循环遍历字符串时,我必须为字符索引提供一个变量,为字符本身提供一个变量,即。 for pos, char := range myString {*做某事*}。如何简单地分配字符本身而不必分配索引?


解决方案


for 循环的 range 形式在切片或映射上进行迭代。

当范围覆盖切片时,每次迭代都会返回两个值:

  1. 第一个是切片的索引;
  2. 第二个是该索引处元素的副本。

假设我们有一个函数来验证一个数字是否是 prime 数字 ,并且我们有一个包含候选数字的数组,那么我们可以通过两种不同的方式调用该函数:

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 的示例。您可以用字符串替换数组并迭代字符串的字节。

理论要掌握,实操不能落!以上关于《如何在 Golang 中迭代字符串并只使用字符而非索引?》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>