1. C语言三目运算
C语言的三目运算表达式为 ?:,该表达式用法如下 a > b ? a : b
C语言的三目运算可以作为简单函数,比如模板函数(模板确切说不是纯C语言,而是C++):
template<Type T>
T max(T a, T b)
{
return a > b ? a : b;
}
2.python三目运算
python 的三目运算不像C语言有特定的操作符,而是如下的方法。
"变量1" if a>b else "变量2"
3.golang的三目运算
golang 不支持三目运算。同时,golang不支持操作符重载和泛型。
可以用的一些方法参考类似如下:
func If(condition bool, trueVal, falseVal interface{}) interface{} {
if condition {
return trueVal
}
return falseVal
}
a, b := 2, 3
max := If(a > b, a, b).(int)
println(max)
其中,由于golang不支持操作符重载,故if函数中,提前把a > b 进行bool判断;而且,由于golang不支持泛型,故用interface进行操作。