注意:编辑测试为x == 1
if(x==1) {
statement1();
statement2();
special1();
statement3();
statement4();
else {
statement1();
statement2();
special2();
statement3();
statement4();
}
尽可能减少因素的正确方法是什么。我正在考虑创建一个抽象基类(使用一个执行语句1-4的方法),它实现了一个纯虚拟特殊方法(可以执行special1或2) - 并且让子类实现该方法。 if else会导致。
Checker myChecker = (x==1) ? Specal1Checker() : Special2Checker();
myChecker.doCheck();
答案 0 :(得分:0)
假设x=1
是一个拼写错误,它应该是x==1
,这里是用C ++做的:
bool const descriptive_name = (x == 1);
statement1();
statement2();
if( descriptive_name ) { special1(); } else { special2(); }
statement3();
statement4();
在Java中表达这一点仍然是一种练习。
在发布时,要重构的原始代码是
if(x=1) {
statement1();
statement2();
special1();
statement3();
statement4();
else {
statement1();
statement2();
special2();
statement3();
statement4();
}