大家好,又见面了,我是你们的朋友全栈君。
如果条件语句极其复杂,就应该将条件语句拆解开,然后逐个检查,并在条件为真时立刻从函数中返回,这样的单独检查通常被称之为“卫语句”(guard clauses)
摘自《重构—改善既有代码的设计》
卫语句的效果就是将原来需要仔细阅读代码、细心整理逻辑的条件判断拆解整理成一眼能看透的逻辑关系,其核心在于对复杂判断逻辑的拆分,不是逻辑的等价替换哈。效果就像以下:
if(it == 活的){
if(it == 人){
if(it != 女人){
return 不喜欢;
} else {
return 喜欢;
}
} else {
return 不喜欢;
}
} else {
return 不喜欢;
}
以上代码无非就是表达 我只喜欢活的女人 的意思,但是代码一层套一层明显妨碍了我在第一时间获取最核心信息的效率,使用卫语句来表达就是:
if (it != 活的){return 不喜欢}
if(it!=人){return 不喜欢}
if(it!=女人){return 不喜欢}
if(it == 女人 && it == 活的) {return 喜欢}
if(其他任何情况){return 不喜欢}
大概就是这么个东西,当然这些代码有重复的逻辑判断在里面,但是代码中为了增强代码的健壮性,多啰嗦两行代码对于初学者来说不是什么坏事。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/125615.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...