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

 更新时间:2016年10月09日 09:15:19   作者:steveye  
这篇文章主要给大家介绍了Go语言实现字符串切片赋值的两种方法,分别是在for循环的range中以及在函数的参数传递中实现,有需要的朋友们可以根据自己的需要选择使用。下面来一起看看吧。

前言

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

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

总结

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

相关文章

  • Go基本数据类型的具体使用

    Go基本数据类型的具体使用

    本文主要介绍了Go的基本数据类型,包括布尔类型、整数类型、浮点数类型、复数类型、字符串类型,具有一定的参考价值,感兴趣的可以了解一下
    2023-11-11
  • go基于Gin框架的HTTP接口限速实践

    go基于Gin框架的HTTP接口限速实践

    HTTP接口在各个业务模块之间扮演着重要的角色,本文主要介绍了go基于Gin框架的HTTP接口限速实践,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • Go语言区别于其他语言的特性

    Go语言区别于其他语言的特性

    在本文中,今天这篇文章将给大家介绍一下 Go 与其他语言不同的 9 个特性,需要的朋友可以参考下面文章的具体内容
    2021-10-10
  • go:gin输出日志文件方式

    go:gin输出日志文件方式

    这篇文章主要介绍了go:gin输出日志文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • Golang常用的几种密码加密方式分享

    Golang常用的几种密码加密方式分享

    这篇文章给大家介绍了Golang常用的几种密码加密方式,加密有两种方式,一种是直接加密,一种是盐值加密,直接加密指的是将原始密码直接进行加密,盐值加密则是在进行密码加密之前,文中有详细的代码示例,需要的朋友可以参考下
    2023-08-08
  • golang中snappy的使用场合实例详解

    golang中snappy的使用场合实例详解

    在java 和go语言 大字符传达的时候, 采用snappy 压缩 解压缩是最好的方案。下面这篇文章主要给大家介绍了关于golang中snappy使用场合的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-12-12
  • go mongox简洁高效文档操作及bson数据构造流畅技巧

    go mongox简洁高效文档操作及bson数据构造流畅技巧

    这篇文章主要为大家介绍了go mongox简洁高效文档操作及bson数据构造流畅技巧示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • Go泛型实战教程之如何在结构体中使用泛型

    Go泛型实战教程之如何在结构体中使用泛型

    这篇文章主要介绍了Go泛型实战教程之如何在结构体中使用泛型,根据Go泛型使用的三步曲提到的:类型参数化、定义类型约束、类型实例化我们一步步来定义我们的缓存结构体,需要的朋友可以参考下
    2022-07-07
  • Go reflect 反射原理示例详解

    Go reflect 反射原理示例详解

    这篇文章主要为大家介绍了Go reflect 反射原理示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • golang xorm 自定义日志记录器之使用zap实现日志输出、切割日志(最新)

    golang xorm 自定义日志记录器之使用zap实现日志输出、切割日志(最新)

    这篇文章主要介绍了golang xorm 自定义日志记录器,使用zap实现日志输出、切割日志,包括连接postgresql数据库的操作方法及 zap日志工具 ,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-10-10

最新评论