Flo*_*her 1 c# performance enums
经过一点速度跟踪后,我找到了一段代码(非常经常调用),它将一个枚举的值转换为另一个枚举的值,如下所示:
public Enum2 ConvertToEnum2(Enum1 enum1)
{
switch(enum1)
{
case Enum1.One:
return Enum2.One;
break;
case Enum1.Two:
return Enum2.Two;
break;
}
}
Run Code Online (Sandbox Code Playgroud)
如果我将这些转换保存在字典中并且只执行以下操作,那么我会更高效吗?
public Enum2 ConvertToEnum2(Enum1 enum1)
{
return m_ConversionTable[enum1];
}
Run Code Online (Sandbox Code Playgroud)
感谢您的意见!
字典肯定不会更快.
如果Enum1中的枚举是顺序的,那么Enum2的数组可能会更快(但这可能是边缘的).如果Enum1接近顺序,那么阵列不会太多,它可能仍然是有用的方法.
对于具有[Flags]属性的枚举,那么切换可能是最好的.
归档时间: |
|
查看次数: |
1193 次 |
最近记录: |