当前位置 博文首页 > Go语言实现字符串切片赋值的方法小结

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

    作者:steveye 时间:2021-05-10 18:29

    前言

    在所有编程语言中都涉及到大量的字符串操作,可见熟悉对字符串的操作是何等重要。本文通过示例详细介绍了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]

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

    总结

    js
    下一篇:没有了