Go语言中append函数用法分析

 更新时间:2015年02月08日 11:35:05   作者:books1958  
这篇文章主要介绍了Go语言中append函数用法,对比使用append函数与不使用append函数的两个实例,详细分析了Go语言中append函数的功能,需要的朋友可以参考下

本文实例分析了Go语言中append函数用法。分享给大家供大家参考。具体如下:

Go语言中append的功能十分强大,使用它可以使很多功能的实现变得更加简洁。以下为简单对比:

.将一个slice插入到另一个slice的指定位置:

不使用append:

复制代码 代码如下:
func insertSliceAtIndex(slice_origin []int, slice_to_insert []int, 
    insertIndex int) (result []int, err error) { 
    if insertIndex > len(slice_origin) { 
        return nil, errors.New("insertIndex不能大于slice_origin的长度") 
    } 
 
    result = make([]int, len(slice_origin)+len(slice_to_insert)) 
    for i := 0; i < len(result); i++ { 
        if i < insertIndex { //插入点之间 
            result[i] = slice_origin[i] 
        } else if i < insertIndex+len(slice_to_insert) { //插入内容 
            result[i] = slice_to_insert[i-insertIndex] 
        } else { 
            result[i] = slice_origin[i-len(slice_to_insert)] 
        } 
    } 
    return 
}

使用append时,代码将十分简洁:

复制代码 代码如下:
d := []string{"Welcome", "for", "Tianjin", "Have", "a", "good", "journey"} 
    insertSlice := []string{"It", "is", "a", "big", "city"} 
    insertSliceIndex := 3 
    d = append(d[:insertSliceIndex], 
        append(insertSlice, d[insertSliceIndex:]...)...) 
    fmt.Printf("result:%v\n", d)

希望本文所述对大家的Go语言程序设计有所帮助。

您可能感兴趣的文章:

相关文章

  • Go语言sync包与锁实现限制线程对变量的访问

    Go语言sync包与锁实现限制线程对变量的访问

    本文主要介绍了Go语言sync包与锁实现限制线程对变量的访问,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • golang创建文件目录os.Mkdir,os.MkdirAll的区别说明

    golang创建文件目录os.Mkdir,os.MkdirAll的区别说明

    本文主要讲述os.Mkdir、os.MkdirAll区别以及在创建文件目录过程中的一些其他技巧,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Go语言Gin框架获取请求参数的两种方式

    Go语言Gin框架获取请求参数的两种方式

    在添加路由处理函数之后,就可以在路由处理函数中编写业务处理代码了,而编写业务代码第一件事一般就是获取HTTP请求的参数吧,Gin框架在net/http包的基础上封装了获取参数的方式,本文小编给大家介绍了获取参数的两种方式,需要的朋友可以参考下
    2024-01-01
  • Go语言实现常用排序算法的示例代码

    Go语言实现常用排序算法的示例代码

    排序算法是在生活中随处可见,也是算法基础,因为其实现代码较短,应用较常见。所以在面试中经常会问到排序算法及其相关的问题。本文为大家整理了一些Go语言中常用排序算法的实现,需要的可以参考一下
    2022-08-08
  • Go函数使用(函数定义、函数声明、函数调用等)

    Go函数使用(函数定义、函数声明、函数调用等)

    本文主要介绍了Go函数使用,包括函数定义、函数声明、函数调用、可变参数函数、匿名函数、递归函数、高阶函数等,感兴趣的可以了解一下
    2023-11-11
  • Golang使用channel实现数据汇总的方法详解

    Golang使用channel实现数据汇总的方法详解

    这篇文章主要为大家详细介绍了在并发编程中数据汇总的问题,并探讨了在并发环境下使用互斥锁和通道两种方式来保证数据安全性的方法,需要的可以参考一下
    2023-05-05
  • golang配置文件解析器之goconfig框架的使用详解

    golang配置文件解析器之goconfig框架的使用详解

    goconfig是一个易于使用,支持注释的 Go 语言配置文件解析器,该文件的书写格式和 Windows 下的 INI 文件一样,本文主要为大家介绍了goconfig框架的具体使用,需要的可以参考下
    2023-11-11
  • Golang通脉之流程控制详情

    Golang通脉之流程控制详情

    这篇文章主要介绍了Golang通脉之流程控制,流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,Go语言中最常用的流程控制有if和for,而switch和goto主要是为了简化代码,下面文章将详细介绍改该内容,需要的朋友可以参考一下
    2021-10-10
  • Go中各种newreader和newbuffer的使用总结

    Go中各种newreader和newbuffer的使用总结

    这篇文章主要为大家详细介绍了Go语言中各种newreader和newbuffer的使用的相关资料,文中的示例代码讲解详细,具有一定的参考价值,感兴趣的小伙伴可以了解下
    2023-11-11
  • Golang实现EasyCache缓存库实例探究

    Golang实现EasyCache缓存库实例探究

    这篇文章主要为大家介绍了Golang实现EasyCache缓存库实例探究,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01

最新评论