使用命令模式:
public interface Command { void exec();}public class CommandA() implements Command { void exec() { // ... }}// etc etc然后构建一个
Map<String,Command>对象并用
Command实例填充它:
commandMap.put("A", new CommandA());commandMap.put("B", new CommandB());那么你可以将if / else if链替换为:
commandMap.get(value).exec();
编辑
你还可以添加诸如
UnknownCommand或的特殊命令
NullCommand,但是你需要一个
CommandMap处理这些特殊情况的命令,以最大程度地减少客户的检查。



