Go语言里切片slice的用法介绍

 更新时间:2022年07月16日 11:43:09   作者:奋斗的大橙子  
这篇文章介绍了Go语言里切片slice的用法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1.切片是基于数组做的一层封装,灵活能够自动扩容。

2.切片的初始化方法

①直接创建

②基于已有的数组或切片

③使用make来创建一个切片

第一个5是切片的大小

第二个5是切片的容量

3.基本操作

①获取元素

②增加元素append

当达到底层的最大容量,切片会进行扩容,扩容的策略是翻倍扩容。

下图说明扩容之后,地址也变化了。

4.切片的修改

和数组(值传递)不一样,切片相当于是一个引用传递。

5.如果计算切片的容量?

例如:b切片的长度和容量是多少?

答案: 长度为2 容量为7

详细可以参考下面图,a、b共用底层切片,但是b是从1开始的,长度为3-1 =2,容量为a其他的底层

6.切片后面追加切片

func AppendSlice(){
     slice1 := []int{1,2,3}
     slice2 := []int{3,3,6}
 
     slice1 = append(slice1,slice2... )
 
    for _, value := range slice1 {
        fmt.Println("value的地址",value)
    }
 
}

注意一下 append(slice1,slice2... ) 这个...定义就是把slice2展开,放到slice1后面。

到此这篇关于Go语言切片slice的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • golang实现浏览器导出excel文件功能

    golang实现浏览器导出excel文件功能

    这篇文章主要介绍了golang实现浏览器导出excel文件功能,文章通过golang导出excel文件返回给web,实现浏览器导出excel文件功能,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-03-03
  • Go语言做爬虫状态码返回418的问题解决

    Go语言做爬虫状态码返回418的问题解决

    在使用Go语言做爬虫时,使用http.Get(url)去获取网页内容,状态码返回404,本文我们就详细的介绍一下解决方法,感兴趣的可以了解一下
    2021-12-12
  • go语言实现简易比特币系统钱包的原理解析

    go语言实现简易比特币系统钱包的原理解析

    这篇文章主要介绍了go语言实现简易比特币系统钱包的原理解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • GO语言中ni,零值与空结构体的使用

    GO语言中ni,零值与空结构体的使用

    Go语言为Java开发者带来了一些新概念,如零值、nil和空结构体,理解这些概念有助于Go语言的学习和应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-10-10
  • 简单谈谈Golang中的字符串与字节数组

    简单谈谈Golang中的字符串与字节数组

    这篇文章主要给大家介绍了关于Golang中字符串与字节数组的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用Golang具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • Go语言封装MinIO相关操作详解

    Go语言封装MinIO相关操作详解

    MinIO 是一个高性能的对象存储服务,兼容 Amazon S3 API,广泛用于存储和管理海量数据,本文将介绍如何用 Go 语言封装一个简单的 MinIO 操作包,需要的可以参考下
    2024-11-11
  • golang内存逃逸的学习笔记

    golang内存逃逸的学习笔记

    内存逃逸是 Go 语言编程中一个特别需要注意的问题,会影响到程序的性能和稳定性,本文主要介绍了golang内存逃逸的学习笔记,感兴趣的可以了解一下
    2024-05-05
  • 使用Go语言连接和操作数据库的基本步骤

    使用Go语言连接和操作数据库的基本步骤

    在Go语言中,连接和操作数据库通常使用database/sql包,它提供了一个数据库抽象层,支持多种数据库引擎,如MySQL、PostgreSQL、SQLite等,下面我将以MySQL为例,详细讲解如何使用Go语言连接和操作数据库,需要的朋友可以参考下
    2024-06-06
  • 详解prometheus监控golang服务实践记录

    详解prometheus监控golang服务实践记录

    这篇文章主要介绍了详解prometheus监控golang服务实践记录,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • 拦截信号Golang应用优雅关闭的操作方法

    拦截信号Golang应用优雅关闭的操作方法

    这篇文章主要介绍了拦截信号优雅关闭Golang应用,本文介绍了信号的概念及常用信号,并给出了应用广泛的几个示例,例如优雅地关闭应用服务、在命令行应用中接收终止命令,需要的朋友可以参考下
    2023-02-02

最新评论