C#4.0面向对象的时间矛盾

问题描述

| 我在
for
循环中有很多
if
语句,并且我正在寻找除
switch
语句以外的替代方法。就时间限制而言,哪个最好? 我的代码
anotherlist

foreach(x objx in xlist)
{
if(objx.att1=anotherlist.someatt)
        do something

if(objx.att2=anotherlist.someatt)
        do something

if(objx.att3=anotherlist.someatt)
        do something
...
这持续约15至20个“ 0”语句。 谁能推荐一个替代方案?     

解决方法

        我有另一种选择,尽管从时间上讲不会更好,但可以更清洁。 您可能有一个字典,字典的键全都是
anotherlist.someatt
可能性,而值是\'do something \'函数的代表。 然后,您可以简单地执行
DictionaryName[objx.att1].invoke(params)
而不是所有这些
if(condition...)
。