slice概述
创建slice
简单创建slice
package main
import "fmt"
func main() {
var sli1 []int
fmt.Println("这是一个空的slice",sli1)
a := [10]int{1,2,3,4,5,6,7,8,9,10}
fmt.Println(a)
sli2 := a[9]
fmt.Println(sli2)
sli3 := a[5:len(a)] //a[6 7 8 9 10],就是不会到第10位
fmt.Println(sli3)
sli4 := a[5:] //a[6 7 8 9 10]
fmt.Println(sli4)
sli5 := a[:5] //a[1 2 3 4 5]
fmt.Println(sli5)
}
结果:
a[5:10]
就是从第5位~第9位,不会到第10位
make创建slice 和 len()、cap()的区别
package main
import "fmt"
func main() {
// make(类型, 包含几个元素, 容量为几)
sli1 := make([]int, 3, 10)
fmt.Println("长度为:", len(sli1))
fmt.Println("最大容量为:", cap(sli1))
fmt.Println(sli1)
}
结果:
slice 字符数组
package main
import "fmt"
func main() {
a := []byte{'a', 'b', 'c', 'd', 'e', 'f'}
slia := a[2:5]
fmt.Println(slia)
fmt.Println(string(slia))
}
结果: