KDOC 346: appendで先頭に追加するには新しいスライスに既存の要素を続ける
この文書のステータス
- 作成
- 2025-04-28 貴島
- レビュー
- 2025-05-02 貴島
概要
Go言語の組み込み関数 append にはさまざまな利用法がある。スライスの末尾でなく前に追加するにはこうする。
import "fmt"
func main() {
origin := []string{"world"}
origin = append([]string{"hello"}, origin...)
fmt.Print(origin)
}
[hello world]
https://github.com/golang/go/blob/3c3b8dd4f0590881f7010014985d05cce1c9e943/src/builtin/builtin.go#L149
func append(slice []Type, elems ...Type) []Type
appendは最初にスライス、次に要素を指定する。最初に追加するには最初のスライスを新しく作り、その後ろに既存のスライスの要素を指定する、というようにする。
関連
抽象。
- 末尾に足す道具を、引数の並べ方を変えて先頭に足すのに使う
関連。
- 類推: KDOC 253: Goの可変長引数はappendで足して…で展開すると次の関数に渡せる。同様にappendの利用法の話題