如题
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
这个之前看到过解释, 是为了简化golang的语言特性. 用if可以得到更清晰易读的代码.
期望: n := flag ? 1 : 2
n := flag ? 1 : 2
现实: n := map[bool]int{true: 1, false:2}[flag]
n := map[bool]int{true: 1, false:2}[flag]
还不如老老实实 if else
// 模拟三元操作符 func If(condition bool, whenTrue, whenFalse interface{}) interface{} { if condition { return whenTrue } return whenFalse }
`单行代码`
这个之前看到过解释, 是为了简化golang的语言特性. 用if可以得到更清晰易读的代码.
期望:
n := flag ? 1 : 2
现实:
n := map[bool]int{true: 1, false:2}[flag]
还不如老老实实 if else