草庐IT

typeswitch

全部标签

go - 如何区分 typeswitch 中的 rune 和 int32 值?

有如下代码varvinterface{}v=rune(1)switchv.(type){caseint32:fmt.Println("int32")caserune:fmt.Println("rune")}编译出错tmp/sandbox193184648/main.go:14:duplicatecaseruneintypeswitchpreviouscaseattmp/sandbox193184648/main.go:12如果我改为将rune包装在我自己的类型中,则类型转换会编译并工作typemyrunerunevarvinterface{}v=myrune(1)switchv.(ty

go - 如何区分 typeswitch 中的 rune 和 int32 值?

有如下代码varvinterface{}v=rune(1)switchv.(type){caseint32:fmt.Println("int32")caserune:fmt.Println("rune")}编译出错tmp/sandbox193184648/main.go:14:duplicatecaseruneintypeswitchpreviouscaseattmp/sandbox193184648/main.go:12如果我改为将rune包装在我自己的类型中,则类型转换会编译并工作typemyrunerunevarvinterface{}v=myrune(1)switchv.(ty