由于类型不匹配错误(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)
}
}
- 1 回答
- 0 关注
- 170 浏览
添加回答
举报
0/150
提交
取消