欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Go语言实现字符串切片赋值的方法小结

程序员文章站 2022-04-10 12:18:05
前言 在所有编程语言中都涉及到大量的字符串操作,可见熟悉对字符串的操作是何等重要。本文通过示例详细介绍了go语言实现字符串切片赋值的方法,感兴趣的朋友们跟着小编一起来看看...

前言

在所有编程语言中都涉及到大量的字符串操作,可见熟悉对字符串的操作是何等重要。本文通过示例详细介绍了go语言实现字符串切片赋值的方法,感兴趣的朋友们跟着小编一起来看看吧。

1. 在for循环的range中

func strrangetest() {
  str := []string{"str1", "str2", "str3"}
  for i, v := range str {
   fmt.println(i, v)
   v = "test"
  }
  fmt.println(str)}

结果:对v的赋值,不会改变字符创切片的值。

0 str1
1 str2
2 str3
[str1 str2 str3]

结论:range是赋值拷贝

2. 在函数的参数传递

func handler() {
  strarr := []string{"str1", "str2", "str3"}
   fmt.println("before call func:", strarr)
  strfunctest(strarr)
  fmt.println("after call func:", strarr)
}

func strfunctest(strarr []string) {
  strarr[0] = "test"
}

结果:函数中对字符串切片的赋值,会改变原切片的值。

[str1 str2 str3]
[test str2 str3]

结论:函数参数的传递是传指针

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。