【Java】多层if-else逻辑判断优化——卫语句
2019-06-05 20:00
246 查看
读码出高效时,提到了使用卫语句实现超过3层的if-else的逻辑判断代码
简单来说就是将多层if-else逻辑拆分为多个if语句级联,拆分得到的if语句就是卫语句。
例如:
[code]public void doWork() { if (isBusy()) { // Busy状态下的操作 return; } if (isDown()) { // Down return; } if (isSleep()) { // Sleep return; } // doWork return; }
将原来的逻辑判断提取为一个逻辑判断的方法,返回一个布尔类型值,作为if语句的判断条件。这样做的好处是多个条件分支更加清晰,逻辑判断封装为一个规范命名的方法时可以通过方法名迅速了解if语句内代码的含义。
相关文章推荐
- java中过多if-else分支语句的优化方案
- 剑指Offer(Java版): 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
- java4Android(5)分支语句-if...else...判断语句
- java基础2 判断语句:if ... else 语句和 switch 语句
- java 使用if else 结构语句判断三个数中的最大值
- java题目:求 1+2+...+n,要求不能用除法、 for、 while、 if、 else、 switch、 case 等关键字及条件判断语句( A?B:C)。
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。Java实现
- java中 if-else分支语句的优化方案
- Java基础教程_判断语句if else
- 编写一个Java程序,用if-else语句判断某年份是否为闰年。
- java练习 二、判断语句 if--else语句
- 求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)
- 代码重构----使用java有限状态机来消除太多的if else判断
- SQL语句中如何使用含有if....else...判断语句
- 求1+2+。。。+n,不用乘除,for、while、if、else、switch、case等关键字及条件判断语句
- C 判断 —— if...else 语句(bool变量、float变量、指针变量与“零值”进行比较)(else 到底与哪个 if 配对呢? if 语句后面的分号?)
- 求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句
- iBatis中的sqlmap里if else逻辑判断的写法
- if else 语句 的优化
- 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)