#青训营 x 字节后端训练营#
在 Go 语言中,断言(assertion)是一种语言特性,可以用来检查接口值的动态类型是否符合预期。断言的语法形式为:
value, ok := interfaceValue.(Type)
其中,interfaceValue 是一个接口类型的值,(Type) 表示要将其转换为的类型,value 是转换后的值,ok 是一个布尔值,表示转换是否成功。
如果 interfaceValue 的动态类型是 Type 或者是 Type 的子类型,那么断言会成功,value 会被赋值为转换后的值,ok 会被设置为 true。否则,断言会失败,value 会被赋值为 Type 的零值,ok 会被设置为 false。