【Go语言】Go语言中的切片
Go语言中的切片(Slice)是对数组的一个抽象,是一种灵活、强大且实用的组合类型。
以下是Go语言中切片的一些常见用法:
- 定义和初始化切片:
// 声明一个未指定大小的切片
var numbers []int
// 声明并初始化一个切片
days := []string{"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}
// 使用make创建一个切片
s := make([]int, 5, 10) // 创建一个长度为5,容量为10的切片
- 访问和修改切片元素:
// 访问切片元素
fmt.Println(days[0]) // 输出 "Sunday"
// 修改切片元素
days[0] = "Sun"
fmt.Println(days) // 输出 ["Sun" "Monday" ...]
- 切片的长度和容量:
// 切片的长度
fmt.Println(len(days)) // 输出 7
// 切片的容量
fmt.Println(cap(days)) // 输出 7
// 切片 s 的长度和容量
fmt.Println(len(s), cap(s)) // 输出 5 10
- 向切片添加元素:
// 使用append()函数向切片添加元素
s = append(s, 1, 2, 3)
fmt.Println(s) // 输出 [0 0 0 0 0 1 2 3]
// 使用append()函数添加一个切片到另一个切片
s = append(s, days...)
fmt.Println(s) // 输出 [0 0 0 0 0 1 2 3 "Sun" "Monday" ...]
- 切割切片:
// 使用切片操作符创建新切片
weekend := days[5:7]
fmt.Println(weekend) // 输出 ["Friday" "Saturday"]
- 示例:使用切片遍历数组
arr := [...]string{"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}
// 使用for循环和range关键字遍历切片
for i, day := range arr {
fmt.Println(i, day)
}
以上是Go语言中切片的一些基本操作和用法。
评论已关闭