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)
// error: 当list为 nil 时,trueVal 为 list[0],运行时异常。
// If 的3个参数是同时传入的,然后再判断执行。
var list []int
max := If(len(list) > 0, list[0], 99).(int)