Java 重构if-else分支的最佳方法是什么
我有一个if-else分支Java 重构if-else分支的最佳方法是什么,java,if-statement,compiler-construction,Java,If Statement,Compiler Construction,我有一个if-else分支 if(name.contains(substring)){ if(name.contains(substring1)){ return "this"; }else if(name.contains(substring2)){ return "that"; } ... }else if(){ // if else ladder } ....//else if ladder continues el
if(name.contains(substring)){
if(name.contains(substring1)){
return "this";
}else if(name.contains(substring2)){
return "that";
}
...
}else if(){
// if else ladder
}
....//else if ladder continues
else{
return "them"
}
重构这个的最佳方法是什么?这是制作这样的逻辑的最有效的方法吗?您可以使用switch语句,否则将使用梯形图。由于编译器能够优化switch语句,因此通常认为它们更有效。过多的
if/else
或switch
语句可能表明设计不佳
在某些情况下,最好使用接口(多态性),例如,请参见
如果s是不必要的,当然不是所有的
。但最好避免将控制结构与尽可能多的工作混合在一起。最后,代码应该易于阅读。取决于您希望在其中执行的逻辑类型。要求是什么。