这个问题在这里给出了解答:https://stackoverflow.com/questions/60561748/why-go-doesnt-have-a-tenary-conditional-operator
虽然Go中没有三元运算操作,但是可以使用以下方法实现同样的结果:
if expr {
n = trueVal
} else {
n = falseVal
}
Go语言中没有的原因是设计者发现该操作过于频繁地用于创建难以理解的复杂表达式。(这一点,Python体现的淋漓尽致)
虽然上面那种形式比较长,但是很明显是更加清晰的。
一种语言仅需要一个条件控制语句即可。
欢迎访问我的个人网站:
李培冠博客:lpgit.com