go slice切片注意跟数组的区别
一个 slice 会指向一个序列的值,并且包含了长度信息。
[]T
是一个元素类型为 T
的 slice。
[2]string 这样定义久是字符数组
[]string 这样定义就是切片
表面上看切片就是不指定长度的数组
package main
import "fmt"
func main() {
//定义并给切片赋值
data := []int{1, 232, 1231, 45, 6766, 222}
fmt.Println(data, len(data), cap(data))
//对data进行切片 取值1231 45
s1 := data[2:4] //开始结束索引值 不包含结束的索引值
fmt.Println("s1 data[2:4]=", s1)
//第0个元素到第三个元素
s2 := data[:4]
fmt.Println("s2 data[:4]=", s2)
//从第三个元素到最后
s3 := data[3:]
fmt.Println("s3 data[3:]=", s3)
}