在枚举类写运行代码优雅的替换了if-else

 啰嗦几句:

在平时的项目里总是不断地加需求,加着加着就不知不觉的多了一大堆if-else,回首一看,脑子里就一个字,这是翔吗?

网络上有很多解决思路,有工厂模式、策略模式......,但是有的时候每一个分支只是小小的代码块,用设计模式时间成本又太高了,可以替换大量的if-else语句,且具备较好的可读性与扩展性,同时能显得轻量化,我比较推荐使用策略枚举来消除if-else。

public enum DayEnum {
    Monday {
        @Override
        public String toDo(String name) {

            return "今天上英语课";
        }
    },
    Tuesday {
        @Override
        public String toDo(String name) {

            return "今天上语文课";
        }
    },
    Wednesday {
        @Override
        public String toDo(String name) {

            return "今天上数学课";
        }
    },
    Thursday {
        @Override
        public String toDo(String name) {

            return "今天上音乐课";
        }
    };
    public abstract String toDo(String name);
}

你可能感兴趣的:(常用,Java底层,java)