有没有一种方法可以将int 3d数组另存为C#中的哈希表值?

时间:2019-04-20 20:44:03

标签: c# multidimensional-array hashtable

我正在尝试创建一个C#应用程序,以模拟事件中客户使用的停车场。

到目前为止,我已经创建了一个int 3d数组,其中包含有关停车场的一些信息。我要实现的是创建一个哈希表,该表将具有唯一的ID作为键(客户的ID),并具有3d数组作为值。

int[][][] myArray = new int[10][][];

... //Code that populates the 3d array

Hashtable ht = new Hashtable();

ht.Add(1, myArray[0][0][0]); // myArray[0][0][0] has the value of [3][5][7]
// When debugging the hashtable the key is 1 and value 1

当我访问ID为1的哈希表时,我期望的是3d数组,而不是当前返回的数字1。

如果我要问的是不可行的,请提出另一种基于唯一键访问3d数组的解决方案。预先谢谢你。

1 个答案:

答案 0 :(得分:-1)

代替:

ht.Add(1, myArray[0][0][0]);

...尝试:

ht.Add(1, myArray);

但是您应该首选Dictionary,因为它是强类型的,并且可以防止运行时错误。

var dict = new Dictionary<int, int[][][]>();