我需要按键在数组中保存一些值,例如:
var arr = ['N' => 1, 'M' => 2, 'P' => 3];
我需要在C#中使用哪种数据类型?
我尝试了ArrayList
类,但它做了一个简单的数组。
答案 0 :(得分:8)
您想使用Dictionary
。
完整示例:
using System.Collections.Generic;
class Program
{
static void Main()
{
var arr = new Dictionary<char, int> {
{'N', 1},
{'M', 2},
{'P', 3},
};
foreach (var pair in arr) {
System.Console.WriteLine(pair.Key + ": " + pair.Value);
}
}
}
答案 1 :(得分:5)
IDictionary<string, int>
应该可以解决问题。类似的东西:
var arr = new Dictionary<string, int>
{
{ "N", 1 },
{ "M", 2 },
{ "P", 3 }
};
(如果这些值应为IDictionary<char, int>
而不是char
,则甚至是string
。)
答案 2 :(得分:0)
您要使用的是System.Collections.Generic.Dictionary<char, int>
或Dictionary<string, int>
,或者您也可以使用enum
,例如:
public enum EnumName
{
N,
M,
P
}
答案 3 :(得分:0)
如果您想引用多种类型的值,请尝试使用Dictionary<string, int>
或词典。
答案 4 :(得分:-2)
您是否尝试过Hashtable,它将允许键值对