如何将枚举值添加到列表中

2024-02-24

我有以下枚举:

public enum SymbolWejsciowy
{
     K1 , K2 , K3 , K4 , K5 , K6 , K7 , K8 
}

我想使用此枚举的值创建一个列表:

 public List<SymbolWejsciowy> symbol;

我尝试了几种不同的方法将枚举值添加到列表中:

SymbolWejsciowy symbol;  
symbol.Add(symbol = SymbolWejsciowy.K1); 

and

symbol.Add(SymbolWejsciowy.K1); 

但是,我总是遇到以下异常:

你调用的对象是空的。

我怎样才能正确地完成这个任务?


正如其他答案已经指出的那样,问题是你已经声明了一个列表,但你还没有构建一个列表,所以你得到一个NullReferenceException当您尝试添加元素时。

请注意,如果您想构造一个新列表,您可以使用更简洁的集合初始值设定项语法 http://msdn.microsoft.com/en-us/library/bb384062.aspx:

List<SymbolWejsciowy> symbols = new List<SymbolWejsciowy> 
{
    SymbolWejsciowy.K1,
    SymbolWejsciowy.K2,
    // ...
};

如果您想要一个包含所有值的列表,那么您可以通过调用来获取Enum.GetValues http://msdn.microsoft.com/en-us/library/system.enum.getvalues.aspx:

List<SymbolWejsciowy> symbols = Enum.GetValues(typeof(SymbolWejsciowy))
                                    .Cast<SymbolWejsciowy>()
                                    .ToList();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将枚举值添加到列表中 的相关文章

随机推荐