长的转换语句通常是不受欢迎的。解决方案是使用多态性。但是,如果我打开的东西不是类型代码怎么办?我想做的是用类似这样的东西替换switch语句......
public void HandleString(string s = "Hello")
{
...
}
public void HandleString(string s = "Goodbye")
{
...
}
...
HandleString("Hello"); // results in the first method being called.
这将取代以下...
string s = "Hello";
switch(s)
{
case "Hello":
...
break;
case "Goodbye":
...
break;
default;
break;
}
有任何想法吗?从理论上讲,我认为您可以完全取消“if/switch”语句,而只需调用根据表达式的值自动绑定的方法。