Go言語のmake関数を使って、10までの要素を作り、4番目の数「5」を表示してみる。

package main

import "fmt"

func main() {
var s []int
s = make([]int, 10)
s[4] = 5
fmt.Println(s)
}

400

要素の数を特定しないで記載する配列を可変長配列と呼ぶ。前回の固定長配列は、var s intで表したが、可変長配列は、var s []intと[]を引数の前に記載する。また、配列を記載する際は、s = make([]int, 10)のように、makeを用いることが決まっている。s = make([]int, 10)で10までの配列を作ることを意味し、s[4] = 5で4番目の値は5であることを記載した。

さらに、10番目の値に9を追加したい場合は、 s = append(s, 9)をs[4] = 5の下に記載する。このように、要素を追加したい場合は、append関数を用いる。

もし、3つの値(5,3,7)を追加したい場合は、下記のように記載する。

package main

import "fmt"

func main() {
var s []int
s = make([]int, 10)
s[4] = 5
s2 := make([]int, 3)
s2[0] = 5
s2[1] = 3
s2[2] = 7
s = append(s, s2...)

fmt.Println(s)

}

547

s2 := make([]int, 3)でsの他に追加したい3つの要素を持つs2の配列を作る。追加したい要素の値を下に続けて記載しs = append(s, s2...)でsの配列に追加した。一つ以上の値を追加したい場合は、append(s, s2...)のように...を記載する。