切片是 go 中轻量级的数组,与底层数组共享数据,提供了灵活的接口。使用切片包括声明、创建、访问元素、添加元素、删除元素等步骤。切片特点是灵活大小、指向底层数组、轻量级。
Go 语言中的切片
切片是什么?
切片是 Go 语言中一种轻量级的数组,它与底层数组共享数据,但提供了一个更灵活的接口。
如何使用切片?
立即学习“go语言免费学习笔记(深入)”;
使用切片涉及以下步骤:
- 声明一个切片:使用 [] 语法声明一个切片,后跟切片元素的类型。例如:[]int。
- 创建切片:可以使用 make 函数创建一个切片,并指定长度和容量。例如:make([]int, 5)。
- 访问元素:使用切片索引来访问元素,就像数组一样。例如:slice[0]。
- 添加元素:使用 append 函数将元素添加到切片末尾。例如:slice = append(slice, 10)。
- 删除元素:可以通过使用 copy 函数来删除元素。例如:copy(slice[:i-1], slice[i:])。
切片的特点:
- 灵活大小:切片可以动态调整大小,而无需像数组那样重新分配内存。
- 指向底层数组:切片共享底层数组的数据,因此对切片中的元素所做的更改也会反映在底层数组中。
- 轻量级:切片只存储长度、容量和指向底层数组的指针,因此内存占用较小。
示例:
package main
import "fmt"
func main() {
// 声明一个 int 切片
slice := []int{1, 2, 3}
// 访问元素
fmt.Println(slice[0]) // 输出:1
// 添加元素
slice = append(slice, 4)
// 遍历切片
for _, v := range slice {
fmt.Println(v)
}
}
输出:
1
4
2
3