为什么不推荐使用 else if
当然是为了简洁易读啦,甚至 else 都不推荐
实例
- else if
func main(){
var age=18
if age < 18 {
// TODO
}else if age >=18 && age < 30{
// TODO
}else if age >=30 && < 60 {
// TODO
}
fmt.Println()
}
是不是看起来有点糟糕,如果{}中的逻辑代码超多,那看起来是超级不方便的,而且 idea 工具收缩代码也不是很方便看
使用 switch....case
func main(){
var age=18
switch true {
case age < 18:
//TODO
case age >=18 && age < 30:
//TODO
case age >=30 && < 60:
//TODO
}
fmt.Println()
}
简洁且易读
- 多使用 return 而不是 else
func IsYoung(age int) bool {
// go 是不支持三元表达式的
// age==18?1:0
if age == 18 {
return true
} else {
return false
}
}
func IsYoung(age int) bool {
if age != 18 {
return false
}
return true
}
一般函数的流程就头走到尾,优先判断不满足的条件或者错误然后 return
// 不推荐
func IsYoung(age int) {
if age == 18 {
// TODO
return
}
return
}
// 推荐使用:断言式写法,流程一步一步往下走,遇到错误则终止
func IsYoung(age int) {
if age != 18 {
return
}
// TODO
return
}