取消if-if else-else代码块

目录

 

完全不必要的else块

场景

解决方法

价值分配

场景

解决方法

将If-Else转换为字典,完全避免If-Else

场景

解决方法

扩展应用程序,完全避免使用 If-Else

场景


完全不必要的else块

场景

通常适用于二选一的场景,既然二选一,只需保留一个if即可,剩下的else用return取代;

解决方法

去掉else,直接用if-return组合取代else;

价值分配

场景

如果要根据提供的某些输入为变量分配新值,则只需要if-return配合即可;

因为是输入值,那么同一时刻,只能输入一个值,只不过这个值的取值范围不固定而已;

解决方法

if() return xxx

if() return xxx

if() return xxx

依次轮退

将If-Else转换为字典,完全避免If-Else

场景

根据某些条件,对应进行一大堆操作,如果继续使用if-if else的话,会给人一种头轻脚重的错觉,例如:

if(xxxxx){

  这里面有50行代码

}else if(xxxxx){

  这里面有60行代码

}

这种编写,极容易耗费后续维护,也容易忘记if里面的条件是什么;

解决方法

使用Map来取代if-else if-else;Map的每个key对应一个value,而这里的Value可以是一个接口/抽象类,然后通过get方法直接调用对应的业务逻辑;

缺点:类可能比较多,比较繁琐

扩展应用程序,完全避免使用 If-Else

场景

怎么说呢,这种模式就是利用【策略模式】进行修改,说是未来方便扩展,其实,感觉跟上一章节内容类似,只是一个内容量相对少,一个内容量相对多的区别;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值