为了账号安全,请及时绑定邮箱和手机立即绑定

带 go 的 Switch case 不同类型

带 go 的 Switch case 不同类型

Go
繁花如伊 2021-11-01 16:26:05
由于类型不匹配错误(int vs bool),以下程序无法编译package mainimport "fmt"func main() {    i := 5    switch i {    case 4:        fmt.Println("4")    case i > 8:        fmt.Println("i is greator than 8")    }}作为来自动态打字背景的人,以上这有点文化冲击。所以想知道在 GO 中这样做的惯用方法是什么?
查看完整描述

1 回答

?
慕后森

TA贡献1802条经验 获得超5个赞

只需使用通用开关:


func main() {

    i := 5

    switch {

    case i == 4:

        fmt.Println("4")

    case i > 8:

        fmt.Println("i is greator than 8")

    default: 

        fmt.Printf("i = (%v), i != 4 && i <= 8\n", i)

    }

}


查看完整回答
反对 回复 2021-11-01
  • 1 回答
  • 0 关注
  • 170 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信