在 Go 中,switch
es 比 C(和 C++)中的灵活得多,因为它们可以处理布尔表达式的情况,并看似完全替换大else
梯子if
,尤其是使用默认switch {...}
块。
switch {
case x < 5 && y > 2:
//...
case y == 1 || x > 2:
//...
default:
}
使用switch
over else
- if
in Go 有什么效率优势吗?似乎提高的效率会因switch
的灵活性而丧失。只是由编译器来解决它,看看它是否可以制作一个跳转表?
使用switch
overif
和有什么性能优势else
吗?