Go语言中append函数用法分析
本文实例分析了Go语言中append函数用法。分享给大家供大家参考。具体如下:
Go语言中append的功能十分强大,使用它可以使很多功能的实现变得更加简洁。以下为简单对比:
.将一个slice插入到另一个slice的指定位置:
不使用append:
funcinsertSliceAtIndex(slice_origin[]int,slice_to_insert[]int, insertIndexint)(result[]int,errerror){ ifinsertIndex>len(slice_origin){ returnnil,errors.New("insertIndex不能大于slice_origin的长度") } result=make([]int,len(slice_origin)+len(slice_to_insert)) fori:=0;i<len(result);i++{ ifi<insertIndex{//插入点之间 result[i]=slice_origin[i] }elseifi<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语言程序设计有所帮助。