Go assert 断言
应用场景
由于接口是用于多态,计算机不知道具体的类型,所以就需要我们使用断言来转化成具体的类型
使用断言的时候,如果类型不匹配就会包panic错误
assert return value
我们在使用断言的时候有两个返回值,第一个是断言之后返回的相应类型的数据,第二个是断言是否成功的bool
使用
if desTypeInstance, ok := usb.(DesType); ok { // 上面的 usb.(DestType) 就是断言 desTypeInstance.Call() }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步