为什么Go没有三目运算

zxmin · · 2829 次点击
期望: `n := flag ? 1 : 2` 现实: `n := map[bool]int{true: 1, false:2}[flag]` 还不如老老实实 if else
#2
更多评论
这个之前看到过解释, 是为了简化golang的语言特性. 用if可以得到更清晰易读的代码.
#1
``` // 模拟三元操作符 func If(condition bool, whenTrue, whenFalse interface{}) interface{} { if condition { return whenTrue } return whenFalse } ```
#3