slice的初始值==nil 返回false

来源:3-3 切片的操作

matthew21

2021-11-28

老师课程说slice初始值是nil我打印出来是[]和nil相比返回false,这个如何解释呢
var s1 = []int{} //zero vlaue is nil
fmt.Println(s1 == nil)
写回答

1回答

ccmouse

2021-11-29

var s1 []int

这个s1就是nil

而var s1 = []int{}

等号右边生成了一个新的空的slice,它的值是[],不是nil。类型是[]int。所以编译器推断s1的类型也是[]int

0
0

Google资深工程师深度讲解Go语言 由浅入深掌握Go语言

语法+分布式爬虫实战 为转型工程师量身打造

5995 学习 · 1909 问题

查看课程