继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

go语言切片初始化,实例详解

幕布斯7119047
关注TA
已关注
手记 432
粉丝 28
获赞 102

    今天给大家说一说go语言切片初始化的方法,话不多说直接上代码:

    切片如何切分

package main

import "fmt"

// 切片

func test1() {

    var s1 = []int{1, 2, 3, 4, 5, 6}

    s2 := s1[0:3] // [)

    fmt.Printf("s2: %v\n", s2)

    s3 := s1[3:]

    fmt.Printf("s3: %v\n", s3)

    s4 := s1[2:5]

    fmt.Printf("s4: %v\n", s4)

    s5 := s1[:]

    fmt.Printf("s5: %v\n", s5)

}

func main() {    test1()

}

    运行结果

[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"

s2: [1 2 3]

s3: [4 5 6]

s4: [3 4 5]

s5: [1 2 3 4 5 6]

    直接初始化

package main 

import "fmt"

func main() {

    s := []int{1, 2, 3}

    fmt.Printf("s: %v\n", s)

}

    运行结果

[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"

s: [1 2 3]

    使用数组初始化

package main

import "fmt"

func main() {

    arr := [...]int{1, 2, 3}

    s1 := arr[:]

    fmt.Printf("s1: %v\n", s1)

}

    运行结果

[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"

s1: [1 2 3]

使用数组的部分元素初始化(切片表达式)

切片的底层就是一个数组,所以我们可以基于数组通过切片表达式得到切片。 切片表达式中的low和high表示一个索引范围(左包含,右不包含),得到的切片长度=high-low,容量等于得到的切片的底层数组的容量。

package main

import "fmt"

func main() {

    arr := [...]int{1, 2, 3, 4, 5, 6}

    s1 := arr[2:5]

    fmt.Printf("s1: %v\n", s1)

    s2 := arr[2:]

    fmt.Printf("s2: %v\n", s2)

    s3 := arr[:3]

    fmt.Printf("s3: %v\n", s3)

}

    运行结果

[Running] go run "/Users/guoliang/SynologyDrive/软件开发/go/golang入门到项目实战/goproject/360duote.com/pro01/test.go"

s1: [3 4 5]

s2: [3 4 5 6]

s3: [1 2 3]

    以上就是关于go语言切片初始化,实例详解的全部内容,更多内容干货可关注慕课网~

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP