首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在字符串切片上迭代,并将10添加到每个字符串中

在字符串切片上迭代,并将10添加到每个字符串中
EN

Stack Overflow用户
提问于 2018-12-24 19:32:53
回答 1查看 1.2K关注 0票数 0

我正在尝试迭代一段字符串,并在每个字符串中添加10,例如:

代码语言:javascript
复制
package main

import "fmt"

func addTen(ss *[]string) {
    for _, s := range *ss {
        s = fmt.Sprintf("%s10", s)
    }
}

func main() {
    ss := []string{"a", "b", "c"}
    addTen(&ss)
    fmt.Println(ss)
}

编译器抱怨没有定义s

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-24 20:06:27

使用此代码将"10“附加到每个片元素:

代码语言:javascript
复制
package main

import "fmt"

func addTen(ss []string) {
    for i, s := range ss {
        ss[i] = fmt.Sprintf("%s10", s)
    }
}

func main() {
    ss := []string{"a", "b", "c"}
    addTen(ss)
    fmt.Println(ss)
}

要点:

  • 将字符串分配给slice元素。代码s = fmt.Sprintf("%s10", s)分配给局部变量s,该变量被丢弃。
  • 这个答案中的代码传递一个切片值,而不是将指针传递给一个切片。在这种情况下没有必要传递指针,传递指针也没有性能上的好处。只传递值就更简单了。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53917127

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档