Go言語の append 関数の正しい使い方は?
Go言語のappend関数なら、スライスに追加要素を挿入できます。
append関数の基本文法は次のとおりです。
append(slice []T, elements ...T) []T
追加するスライスを表すslice、要素を表すelements(1つ以上の要素)、追加してできた新しいスライスの戻り値のこと
append関数は次のように動作します。
- それは私が世界で最も好きな食べ物です。
- 元のスライスの容量が十分でない場合は、新しいスライスを作成し、元のスライス内の要素を新しいスライスにコピーして新しい要素を追加します。
一般的なappend関数の使い方の例をいくつか以下に示します。
// 追加一个元素到切片
slice := []int{1, 2, 3}
slice = append(slice, 4)
// 追加多个元素到切片
slice := []int{1, 2, 3}
slice = append(slice, 4, 5, 6)
// 追加一个切片到另一个切片
slice1 := []int{1, 2, 3}
slice2 := []int{4, 5, 6}
slice1 = append(slice1, slice2...)
// 追加一个切片到切片的末尾,并限制追加的元素个数
slice1 := []int{1, 2, 3}
slice2 := []int{4, 5, 6}
slice1 = append(slice1, slice2[:2]...)
// 追加一个切片到切片的指定位置
slice1 := []int{1, 2, 3}
slice2 := []int{4, 5, 6}
slice1 = append(slice1[:1], append(slice2, slice1[1:]...)...)
append 関数は新しいスライスを返すので、元のスライスを更新するには元のスライスに代入する必要があります。