2016-01-23 14 views
2

我需要声明一个包含100个键和值的字典(键是一个字符串,值是一个整数)。每个键都是网格参考:A1,B6等。我知道一些网格的确定值。我想通过将int值设置为null来为程序的开始处的每个值添加一个键和一个值,但不允许这样做。我该怎么办?在字典中使用类型'null'而不是int来解决

+0

你能告诉你的代码? –

+0

字典没有被声明或实例化的大小 – Plutonix

+1

您可以使用[Nullable](https://msdn.microsoft.com/en-us/library/1t3y8s4s.aspx)int – MAV

回答

3

添加'?'整型使后一个空类型

Dictionary<string, int?> myDictionary = new Dictionary<string, int?>(); 
+0

谢谢,这对我很有用! – dHavercroft

4

null不是一个类型,它是一个值(基准),其每一个参考类型可分配给。

所以,如果我看了你的帖子正确,你有这样的:

Dictionary< String, Int32 > // or Dictionary<string,int> 

将其更改为Int32?(语法糖Nullable<Int32>)。您还可以使用{ { key, value } }语法来初始化一个字典,而不是重复调用.Add(key, value),如下面的示例所示:

Dictionary< String, Int32? > dict = new Dictionary< String, Int32? > { 
    { "A1", null }, 
    { "A2", null }, 
    { "A3", null }, 
    { "A4", 16 }, 
    { "A5", 123 }, 
    // etc 
}; 
相关问题