如何重构下面包含许多ifs的代码,每个块包含不同的场景。
if(condition1)
{
ConfigCondition1();
GetSetCondition1Results();
}
if(condition2)
{
ConfigCondition2();
GetSetCondition2Results();
}
if(condition3)
{
ConfigCondition3();
GetSetCondition3Results();
}
答案 0 :(得分:3)
答案 1 :(得分:2)
Strategy pattern似乎最适合您的问题。
使用策略模式,客户端可以从一组已实现的算法中选择将在运行时执行的算法。
答案 2 :(得分:0)
遵循此指南。
if
语句都与相同的值相比较?如果是,请使用switch
阻止if
阻止排除其他人吗?如果是,请使用else if
。