在C#中,switch语句仅支持整数类型(不支持Guid),因此简单的O(1)比较表似乎不可能。
匹配Guid的计算最高效的方法是什么?
起初我认为
if(gMyGuid == new Guid("VALUE"))
else if (gMyGuid == new Guid("VALUE2")
else if (gMyGuid == new Guid("VALUE3")
...
else if (gMyGuid == new Guid("VALUEn")
然而通过这样做,每次都会创建一个新的Guid实例进行比较。我可以将Guid转换为字符串,然后在字符串上进行比较,但字符串比较起来相当冗长。
非常感谢您提供的任何建议。
switch
语句不仅支持整型,还支持字符串。但是,它要求在编译时已知需要测试的case标签。 - O. R. Mapper