Skip to content

Slice 声明和初始化 #3

@kevinyan815

Description

@kevinyan815

在Go中一个数组的长度是固定的,但是切片的长度是可以动态扩充的,所以在实际应用中切片比数组更常用。

An array has a fixed size. A slice, on the other hand, is a dynamically-sized, flexible view into the elements of an array. In practice, slices are much more common than arrays.

声明切片

var identifier []type

切片在未初始化前默认的zero value是nil, 长度是0.

初始化切片

  • 从已知数组初始化切片
    var slice1 []type = array1[start:end]
    表示 slice1 是由数组 arr1 从 start 索引到 end-1 索引之间的元素构成的子集(切分数组,start:end 被称为 slice 表达式)

  • 初始化相关数组和切片
    var x = []int{2, 3, 5, 7, 11}这样就创建了一个长度为 5 的数组并从这个相关数组创建了一个切片。

  • 用make初始化
    当相关数组还没有定义时,用 make() 函数来创建一个切片 同时创建好相关数组
    make([]type)
    make([]type, len)
    make([]type, len, cap)

引用类型

slice是引用类型,它的零值是nil, 长度是0.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions