您的位置:首页 > Web前端

An effective way to use pattern to instead of multiple if else statements

2011-07-19 15:14 573 查看
We often face many if-else statements during the development, that's a little boring.
We can use pattern to change this, such as Strategy, and Command patterns.
Here is an example for Command pattern:
package com.stefli.test.pattern.ifelse;

public class IfElseTester {
public enum Command {
A {
void exec() {
p("A command executed!");
}
},
B {
void exec() {
p("B command executed!");
}
},
C {
void exec() {
p("C command executed!");
}
};
abstract void exec();
}

public static void p(String line) {
System.out.println(line);
}

public static void main(String[] args) {
if (args.length != 1) {
p("Wrong arguments!please try again!");
}
oldMethod(args);
newMethod(args);
}

public static void oldMethod(String[] args) {
if ("A".equalsIgnoreCase(args[0])) {
p("A executed in old method!");
} else if ("B".equalsIgnoreCase(args[0])) {
p("B executed in old method!");
} else if ("C".equalsIgnoreCase(args[0])) {
p("C executed in old method!");
}
}

public static void newMethod(String[] args) {
Command.valueOf(args[0]).exec();
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐