接口类型值为nil

题目:

下面这段代码输出什么?

1
2
3
4
5
6
7
8
func main() {  
var i interface{}
if i == nil {
fmt.Println("nil")
return
}
fmt.Println("not nil")
}
  • A. nil
  • B. not nil
  • C. compilation error

答案解析:

答案及解析:A。

当且仅当接口的动态值和动态类型都为 nil 时,接口类型值才为 nil。


接口类型值为nil
http://example.com/2023/10/06/Go每日一题/接口类型值为nil/
作者
Feng Tao
发布于
2023年10月6日
更新于
2023年10月6日
许可协议