1. 切片与数组对比
(1). 列表
数组是具有固定长度且拥有零个或者多个相同数据类型元素的序列。
数组的长度是数组类型的一部分,所以[3]int 和 [4]int 是两种不同的数组类型。
(2). 切片
切片表示一个拥有相同类型元素的可变长度的序列。
切片是一种轻量级的数据结构,它有三个属性:指针、长度和容量。
切块结构如下:
type Slice struct {
ptr unsafe.Pointer
len int
cap int
}
(3). 关系
一个底层数组可以对应多个slice,这些slice可以引用数组的任何位置,彼此之间的元素还可以重叠。
example1.png
网友评论