扩展:
package main
import "fmt"
func main() {
arr1 := [...]int{0, 1, 2, 3, 4, 5, 6, 7}
fmt.Printf("arr1的长度:%d arr1:的容量:%d arr1的地址:%p\n", len(arr1), len(arr1), &arr1)
s1 := arr1[2:6]
fmt.Println("s1的内容", s1) // 2 3 4 5
fmt.Println("s1的长度:", len(s1))
fmt.Println("s1的容量:", cap(s1))
fmt.Println("==========================================")
//对s1切片再进行切片[2 3 4 5]
s2 := s1[3:5] //[5 6 ]
fmt.Println("s2的内容", s2)
fmt.Println("s2的长度", len(s2))
fmt.Println("s2的容量", cap(s2))
/*
arr1的长度:8 arr1:的容量:8 arr1的地址:0xc00001c1c0
s1的内容 [2 3 4 5]
s1的长度: 4
s1的容量: 6
==========================================
s2的内容 [5 6]
s2的长度 2
s2的容量 3
*/
}
下面
本文深入探讨了Go语言中切片的使用,通过实例演示了如何创建切片,以及切片的长度、容量和地址的概念。进一步展示了对切片进行再切片的操作,详细解释了切片的动态特性和其与原数组之间的联系。
1648

被折叠的 条评论
为什么被折叠?



