在 Go 语言中, slice 是一种动态数组。它由三个部分组成:指向底层数组的指针,切片长度和切片容量。使用 slice 时,需要注意以下几点:
以下是一个 slice 的示例,展示了 slice 的基本用法:
package main
import "fmt"
func main() {
nums := []int{1, 2, 3, 4, 5}
fmt.Println("nums:", nums)
//获取 nums 的子集
subNums := nums[2:4]
fmt.Println("subNums:", subNums)
//修改子集中的一个元素
subNums[0] = 333
fmt.Println("subNums after change:", subNums)
fmt.Println("nums after change:", nums)
}
运行结果是:
nums: [1 2 3 4 5]
subNums: [3 4]
subNums after change: [333 4]
nums after change: [1 2 333 4 5]
可以看到,subNums 是 nums 的一个子集。当 subNums 中的元素被修改时,nums 中对应的元素也发生了变化。
希望这个示例可以帮助你更好地理解 slice 的使用方式。