説明
Go言語では配列変数を代入すると内容がコピーされます。コピーされるため配列データが大きいと処理に時間がかかります。このコストを軽減するためにスライス型が用意されています。スライス型は配列全体もしくは一部の範囲への参照を変数に持ちます。参照なので配列内容がコピーされることはなく、処理時間も軽減されます。スライス型の変数の宣言は「変数名 [ ]型」となります。途中から最後までの配列要素を抜き出すには「スライス型変数 = 抜き出す配列変数[ 抜き出す開始位置: ]」とします。開始位置は最初の要素が0になります。
このサンプルでは5番目から最後までの要素が抜き出されます。
package main
import "fmt"
func main() {
var data = [10] byte {1,2,3,4,5,6,7,8,9,10}
fmt.Println(data)
var subdata [ ] byte
subdata = data[4:]
fmt.Println(subdata)
}
実行結果