温馨提示×

go语言切片如何初始化

小樊
81
2024-11-29 02:34:29
栏目: 编程语言

在Go语言中,切片(slice)是一个长度可变的序列,它的底层是一个数组。初始化切片有以下几种方法:

  1. 使用make函数创建一个切片,指定切片的长度(len)和容量(cap):
package main

import "fmt"

func main() {
    // 创建一个长度为3,容量为5的切片
    slice := make([]int, 3, 5)
    fmt.Println(slice) // 输出: [0 0 0]
}
  1. 使用字面量创建一个切片,指定切片的元素类型和初始值:
package main

import "fmt"

func main() {
    // 创建一个包含3个元素的切片,初始值分别为1、2、3
    slice := []int{1, 2, 3}
    fmt.Println(slice) // 输出: [1 2 3]
}
  1. 使用make函数创建一个空切片,然后使用append函数向切片中添加元素:
package main

import "fmt"

func main() {
    // 创建一个空切片
    slice := make([]int, 0)

    // 向切片中添加元素
    slice = append(slice, 1)
    slice = append(slice, 2)
    slice = append(slice, 3)

    fmt.Println(slice) // 输出: [1 2 3]
}
  1. 使用字面量创建一个空切片,然后使用索引赋值的方式初始化切片元素:
package main

import "fmt"

func main() {
    // 创建一个空切片
    slice := []int{}

    // 使用索引赋值的方式初始化切片元素
    slice[0] = 1
    slice[1] = 2
    slice[2] = 3

    fmt.Println(slice) // 输出: [1 2 3]
}

注意:在使用索引赋值的方式初始化切片元素时,切片的容量必须足够大,否则会导致运行时错误(index out of range)。

0