Go中对nil的Slice和空Slice的处理是一致的吗?

取消

1个回答

匿名

首先Go的JSON 标准库对 nil slice 和 空 slice 的处理是不一致。

  • slice := make([]int,0):slice不为nil,但是slice没有值,slice的底层的空间是空的。
  • slice := []int{} :slice的值是nil,可用于需要返回slice的函数,当函数出现异常的时候,保证函数依然会有nil的返回值。
  • 2 关注
  • 1 收藏,800 浏览
  • 提出于 2022-12-26 16:46:27

相似问题