Append() を Go 言語で使用すると、スライスに要素を動的に追加および削除できます。要素構文「slice = append(slice,elem1,elem2)」を追加しました。要素の削除は 2 つのタイプに分類できます: 1. インデックスにある要素の削除、構文 "slice=append(slice[:i],slice[i 1:]...)"; 2. 指定されたインデックス間の要素の削除、構文構文「スライス=追加(スライス[:i],スライス[i2:]...)」。
このチュートリアルの動作環境: Windows 7 システム、GO バージョン 1.18、Dell G3 コンピューター。
要素をスライスに追加する
Go 言語では、append() を使用して要素をスライスに動的に追加できます。
slice = append(slice,elem1,elem2)
append角括弧内では、最初のパラメータ スライスの後に複数のパラメータを追加できます。
package main import "fmt" //切片进阶操作 func main(){ //append()为切片追加元素 s1 := []string {"火鸡面","辛拉面","汤达人"} fmt.Printf("s1=%v len(s1)=%d cap(s1)=%d\n",s1,len(s1),cap(s1)) //调用append函数必须用原来的切片变量接收返回值 s1 = append(s1,"小当家") //append追加元素,原来的底层数组装不下的时候,Go就会创建新的底层数组来保存这个切片 fmt.Printf("s1=%v len(s1)=%d cap(s1)=%d\n",s1,len(s1),cap(s1))//cap增加两倍 }
スライスすると要素が削除されます
Go 言語のスライスでは要素も削除されますappend 関数を使用してこれを間接的に実現できます。
#インデックスインデックスの要素を削除します
slice = append(slice[:index], slice[index+1:]...)
説明 | |
---|---|
削除する要素のスライス。 | #index |
削除するインデックス。 | #インデックスインデックスからインデックス2まで要素を削除します |
##パラメータ
説明
slice | |
---|---|
#index | 削除する開始インデックス。 |
#index2 | 削除する終了インデックス。|
package main import ( "fmt" ) func main() { //使用append函数,实现删除切片 index 处的元素 var slice = []string{"aa", "bb", "cc"} fmt.Println("slice =", slice) slice = append(slice[:1], slice[2:]...) fmt.Println("slice =", slice) } |
例 2: 次を使用します。 append 関数は、スライス インデックス 1 からインデックス 3 までの要素の削除を実装します |
[関連する推奨事項:
Go ビデオ チュートリアル、プログラミング教育
]以上がGo言語でスライス内の要素を追加および削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。