在c#中如何或是否可能将整数数组存储到字典中?整型,int[]>可能的
本文关键字:字典 整型 int 数组 是否 整数 存储 | 更新日期: 2023-09-27 17:53:46
我是c#新手,我只是在写一个个人使用的快速/小规模应用程序。我想有一个哈希表,将枚举值关联到包含整数的数组,即int[]格式。这可能不使用数组列表吗?
我摆弄了一下语法,但我运气不好。我想要的是Dictionary<Integer, int[]>
我正在写一个模式匹配算法,有三种不同的类型由枚举表示。我正在跟踪大小为6的数组中的整数值以确定预测。
这个问题的简化是,有一个整数列表正在构建,如果我能在序列到达之前预测它的下一部分,那将是非常有益的。
这是一个非常简单的算法,不涉及任何复杂的东西,除了一些数学技巧,如gcd等。
顺便说一句,谢谢你的帮助!——
这是完全正确的:
var dict = new Dictionary<int, int[]>();
dict.Add(1, new int[] {1, 2, 3});
所以答案是可以的,你可以那样做
是的,这是可能的。例子:
Dictionary<int, int[]> items = new Dictionary<int, int[]>();
// add an item using a literal array:
items.Add(42, new int[]{ 1, 2, 3 });
// create an array and add:
int[] values = new int[3];
values[0] = 1;
values[1] = 2;
values[2] = 3;
items.Add(4, values);
// get one item:
int[] values = items[42];
您可以使用Dictionary<int, int[]>
或Dictionary<int, List<int>>
示例:
enum MyEnum
{
Value1,
Value2,
Value3
}
...
var dictionary = new Dictionary<MyEnum, int[]>();
dictionary[MyEnum.Value1] = new int[] { 1, 2, 3 };
dictionary[MyEnum.Value3] = new int[] { 4, 5, 6 };
dictionary[MyEnum.Value3] = new int[] { 7, 8, 9 };
用法:
int i = dictionary[MyEnum.Value1][1]; // i == 2