java分支语句有哪些_Java代码多分支语句优化

d07e0ba8e777093e667475e8a7149038.png

DIEA

我记着if else和switch case语句都可以用命令模式来重构interface dao{    crdu() ;}class ConcreteDao implements dao{    crdu(){...} ;}class Service{    private Dao dao ;    public void set(Dao dao){}    public void service(){dao.service();}}class ServiceControl{    private HashMap map ;    private Service service ;    public ServiceControl()    {        //读xml表初始化标识与dao的对应    }    public void service(int flag)    {        //根据flag来选择不同的dao注入到service中        Dao dao = map.get(flag) ;        service.set(dao) ;        service.service() ;    }}然后control层直接嗲用servicecontrol就可以了, 这样control层就和dao解耦了, 两边的修改互不影响, 通过xml进行协调

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java 中,条件分支语句(if-else)过多会导致代码的可读性和可维护性降低。以下是多条件判断下的代码优化解决方案: 1. 使用 switch-case 语句 当需要判断的条件较多时,可以使用 switch-case 语句。它将多个条件判断整合在一起,可以提高代码的可读性和可维护性。 ```java switch (condition) { case case1: // do something break; case case2: // do something break; case case3: // do something break; // other cases default: // do something } ``` 2. 使用多态 当需要根据不同的条件执行不同的操作时,可以使用多态。通过定义一个抽象类或接口,然后定义不同的子类来实现不同的操作,可以避免使用大量的条件分支语句。 ```java public abstract class Operation { public abstract double getResult(double num1, double num2); } public class AddOperation extends Operation { public double getResult(double num1, double num2) { return num1 + num2; } } public class SubOperation extends Operation { public double getResult(double num1, double num2) { return num1 - num2; } } // other operation classes public class Calculator { public double calculate(Operation operation, double num1, double num2) { return operation.getResult(num1, num2); } } ``` 3. 使用策略模式 当需要根据不同的条件执行不同的策略时,可以使用策略模式。它将不同的策略封装在不同的类中,可以避免使用大量的条件分支语句。 ```java public interface Strategy { void execute(); } public class Strategy1 implements Strategy { public void execute() { // do something } } public class Strategy2 implements Strategy { public void execute() { // do something } } // other strategy classes public class Context { private Strategy strategy; public void setStrategy(Strategy strategy) { this.strategy = strategy; } public void executeStrategy() { strategy.execute(); } } ``` 以上是多条件判断下的代码优化解决方案,在实际开发中,应根据具体情况选择合适的解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值