a[low : high]
: スライスの範囲を示します。startからendまでの要素を含みますが、end自体は含みません。つまり、start以上 end未満の要素が含まれます。
- 範囲指定の際、startの値は含まれ、endの値は含まれないことに注意
- 範囲指定は元のスライスの一部を参照するだけであり、元のデータを変更するわけではありません
例えば、以下のようなスライスがあるとします。この場合、a[1:4]は、インデックス1(含む)からインデックス4(含まず)までの要素を抽出します。つまり、[1, 2, 3]が返されます。
package main
import "fmt"
func main() {
a := []int{0, 1, 2, 3, 4, 5}
var s []int = a[1:4]
fmt.Println(s) // [1 2 3]
}