這篇“go語言中切片如何增刪元素”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“go語言中切片如何增刪元素”文章吧。
創(chuàng)新互聯(lián)主要從事成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)宿松,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575
go語言中可用append()為切片動(dòng)態(tài)增加和刪除元素。增加元素的語法“slice = append(slice,elem1,elem2)”。刪除元素可分兩種:1、刪除索引處的元素,語法“slice=append(slice[:i],slice[i+1:]...)”;2、刪除指定索引間的元素,語法“slice=append(slice[:i],slice[i2:]...)”。
切片增加元素
在go語言中,可以使用append()為切片動(dòng)態(tài)添加元素。
slice = append(slice,elem1,elem2)
append括號(hào)內(nèi),第一個(gè)參數(shù)slice后可以加多個(gè)參數(shù)。
package main
import "fmt"
//切片進(jìn)階操作
func main(){
//append()為切片追加元素
s1 := []string {"火雞面","辛拉面","湯達(dá)人"}
fmt.Printf("s1=%v len(s1)=%d cap(s1)=%d\n",s1,len(s1),cap(s1))
//調(diào)用append函數(shù)必須用原來的切片變量接收返回值
s1 = append(s1,"小當(dāng)家") //append追加元素,原來的底層數(shù)組裝不下的時(shí)候,Go就會(huì)創(chuàng)建新的底層數(shù)組來保存這個(gè)切片
fmt.Printf("s1=%v len(s1)=%d cap(s1)=%d\n",s1,len(s1),cap(s1))//cap增加兩倍
}
切片刪除元素
Go 語言 的 切片 刪除元素也可以使用 append 函數(shù) 來間接的實(shí)現(xiàn)。
刪除索引index處的元素
slice = append(slice[:index], slice[index+1:]...)
參數(shù) | 描述 |
---|---|
slice | 要?jiǎng)h除元素的切片。 |
index | 要?jiǎng)h除的索引。 |
刪除索引index到index2處的元素
slice = append(slice[:index], slice[index2:]...)
參數(shù) | 描述 |
---|---|
slice | 要?jiǎng)h除元素的切片。 |
index | 要?jiǎng)h除的開始索引。 |
index2 | 要?jiǎng)h除的結(jié)束索引。 |
示例1:使用 append 函數(shù),實(shí)現(xiàn)刪除切片 索引 1 處的元素
package main
import (
"fmt"
)
func main() {
//使用append函數(shù),實(shí)現(xiàn)刪除切片 index 處的元素
var slice = []string{"aa", "bb", "cc"}
fmt.Println("slice =", slice)
slice = append(slice[:1], slice[2:]...)
fmt.Println("slice =", slice)
}
示例2:使用 append 函數(shù),實(shí)現(xiàn)刪除切片 索引 1 到 索引 3 處的元素
package main
import (
"fmt"
)
func main() {
//使用append函數(shù),實(shí)現(xiàn)刪除切片 index 處的元素
var slice = []string{"aa", "bb", "cc", "dd", "ee", "ff"}
fmt.Println("slice =", slice)
slice = append(slice[:1], slice[3:]...)
fmt.Println("slice =", slice)
}
以上就是關(guān)于“go語言中切片如何增刪元素”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。