众所周知,Go语言本身并没有提供内置的三元表达式,但是我们可以使用一些技巧来模拟实现。下面是使用最短的代码实现Go的三元表达式:
package main import "fmt" func main() { x := 10 y := 20 max := map[bool]int{true: x, false: y}[x > y] fmt.Println(max) }
在这个例子中,我们使用了一个map结构,将布尔值映射为对应的整数值。然后,我们根据比较a和b的值的结果,从这个map中获取对应的整数值作为返回值,从而实现了三元表达式的逻辑。由于这个方法使用了map结构,代码相对较短,但可读性较差,不太适合在实际项目中使用。
除了整数类型以外,其他类型也是可以的,使用类似的方式实现
标签:map,fmt,使用,go,三元,表达式 From: https://www.cnblogs.com/sin3degree/p/17348489.html