【Go言語】スライス
最近、Go言語を勉強しているので、メモがてら書いておきます。
スライスの特徴
容量を増やせば可変長型配列のように使えるようです。 GoはArrayだと要素数は最初に宣言した以上には増やせません。
使い方コード例
package main import "fmt" func main() { s := []int{2, 3, 5, 7, 11, 13} var s1[]int var s2[]int var s3[]int s1 = s[1:4] fmt.Println(s1) // [3 5 7] s2 = s[:2] fmt.Println(s2) // [2 3] s3 = s[1:] fmt.Println(s3) // [3 5 7 11 13] fmt.Println(cap(s)) // 配列の容量 fmt.Println(len(s)) // 配列の長さ }
make append
package main import "fmt" func main() { slices := make([]int, 3) fmt.Println(slices) // [0 0 0] var slices_append []int slices_append = append(slices, 1) // 追加 fmt.Println(slices_append) // [0 0 0 1] fmt.Println(len(slices_append)) // 要素数 4 fmt.Println(slices_append[2]) //要素にアクセス 0 }