加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何添加枚举值列表

发布时间:2020-12-15 18:08:45 所属栏目:百科 来源:网络整理
导读:我有枚举: public enum SymbolWejsciowy{ K1,K2,K3,K4,K5,K6,K7,K8 } 我想创建这个枚举的列表 public ListSymbolWejsciowy symbol; 但在我的方式添加枚举列表: 1. SymbolWejsciowy symbol ; symbol.Add(symbol = SymbolWejsciowy.K1); 2. symbol.Add(Symbo
我有枚举:
public enum SymbolWejsciowy
{
     K1,K2,K3,K4,K5,K6,K7,K8 
}

我想创建这个枚举的列表

public List<SymbolWejsciowy> symbol;

但在我的方式添加枚举列表:
1.

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

2.
symbol.Add(SymbolWejsciowy.K1);

我总是得到异常

Object reference not set to an instance of an object.

我做错了:/请帮忙:)

解决方法

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

请注意,如果要构建新列表,可以使用更简洁的collection initializer syntax:

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

如果您想要一个包含所有值的列表,那么可以通过调用Enum.GetValues

List<SymbolWejsciowy> symbols = Enum.GetValues(typeof(SymbolWejsciowy))
                                    .Cast<SymbolWejsciowy>()
                                    .ToList();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读