昨晚我在写if语句时有了一个想法,当你像这样写代码时,有时表达式会变得很长:
if(x == 1 || x == 2 || x == 33 || x == 4 || x == -5 || x == 61) { ... }
x可以是枚举、字符串、整数或字符,你明白了。
我想知道是否有更简单的方法来编写这个表达式。 例如,我认为SQL的运算符“in”可以缩短表达式:
if(x in (1,2,33,4,-5,61)) { ... }
我知道你不能使用“in”来编写这样的表达式,因为编译器的词法分析器和语法分析器无法识别它。
或许将不同类型的x作为扩展方法是解决方案?在即将发布的.NET 4.0中,我听说有关于参数化方法的一些内容,那是否可以解决if表达式中提供的n个参数的问题?
也许你理解我的意思,你有没有好的实践/解决方案来回答这个问题呢?
/Daniel