我想将枚举值和数字存储在集合或数组中,并能够更新特定值。考虑到性能影响,对最佳方法有什么建议吗?
例如
enum Colour {Red, Yellow, Green};
想要存储(和更新):
红色:230
黄色:500
绿色:50
我想将枚举值和数字存储在集合或数组中,并能够更新特定值。考虑到性能影响,对最佳方法有什么建议吗?
例如
enum Colour {Red, Yellow, Green};
想要存储(和更新):
红色:230
黄色:500
绿色:50
您可以使用Dictionary<Colour, int>
:
Dictionary<Colour, int> dict = new Dictionary<Colour, int>();
dict[Colour.Red] = 230;
dict[Colour.Yellow] = 500;
dict[Colour.Green] = 50;
Console.WriteLine(dict[Colour.Red]) //outputs 230
最好的解决方案是使用字典:
var dictionary = new Dictionary<Colour, int>()
dictionary[Colour.Red] = 230;
dictionary[Colour.Yellow] = 500;
dictionary[Colour.Green] = 50;
这样做,每种颜色在集合中最多存在一次。如果您使用 aCollection
或 an Array
,您将能够在集合中多次使用相同的颜色。