栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

代码重构之嵌套终极之无敌嵌套if else优化

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

代码重构之嵌套终极之无敌嵌套if else优化

1.当你看到老项目的这种代码,if 嵌套 if 嵌套 if 嵌套 if 无穷无尽的嵌套

比如像下面这种的。一顿操作猛如虎,到后来怀疑自己二百五。

 

分析:其实我们仔细看看上面的判断语句,它们都是在 if 里面的条件是真的情况才执行,也就是说它们都是走的正常情况,才会导致这么无限嵌套下去,那么我们从反面思考是不是就可以终止这种情况呢?也就是我们把不正常的条件先摘出来处理,剩下的就都是正常情况了。这其实就是卫语句的思考模式,也就是逆向思考。卫语句可以减少 if-else 语句嵌套的情况出现。所以在阿里巴巴 Java 规范里也写到 “多层条件语句建议使用卫语句、策略模式、状态模式等方式重构。”

面对这种情况,我们想要优化的时候,就可以使用do while()循环来解决这个问题,需要注意的是,while(false)里面需要写false,同时要将条件进行取反。具体看下面的使用方法。

可以将else的语句写进if里面。

可以参考

什么是卫语句?更优雅的代码方式 - 云+社区 - 腾讯云不知你有没有被多层嵌套的 if-else 语句所折磨过,就像下面这种 “横放着的金字塔”:https://cloud.tencent.com/developer/article/1783577

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/686859.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号