标签:自定义 cap target tar UNC 前言 strong ref nbsp
Go中的数组数据类型的长度在声明的时候就已经固定了,切片是基于数组实现的 可变长度的容器。
切片类型和数组类型一样,想要使用,就必须要定义和初始化,不同之处已经提到,切片不需要指定切片的长度。
1.自定义切片
package main
import (
"fmt"
)
func main() {
//切片的定义
var s1 []int //存放元素不限定,仅限定数据类型
var s2 []string
fmt.Println(s1 == nil) //在初始化之前切片的值=nil
fmt.Println(s2 == nil)
//切片的初始化
s1 = []int{1, 2, 3}
s2 = []string{"刘德华", "郭富城", "黎明", "梁朝伟"}
//切片的长度和容量
fmt.Printf("长度:%d 容量:%d", len(s1), cap(s1))
}
2.由数组得到切片
package main
import (
"fmt"
)
func main() {
a1 := [...]int{1, 2, 3, 4, 5, 6, 69}
s1 := a1[0:2]
s2 := a1[:4]
s3 := a1[2:]
s4 := a1[:]
fmt.Println(s1, s2, s3, s4)
//切片的容量:是指底层数组的从切边的第1个元素-----》最后1个元素的数量
fmt.Printf("切片的长度:%d 切片的容量:%d\n", len(s1), cap(s1))
fmt.Printf("切片的长度:%d 切片的容量:%d\n", len(s2), cap(s2))
fmt.Printf("切片的长度:%d 切片的容量:%d\n", len(s3), cap(s3))
}
标签:自定义 cap target tar UNC 前言 strong ref nbsp
原文地址:https://www.cnblogs.com/sss4/p/12557081.html