C#中此数组的适当数据结构是什么?

时间:2009-11-24 09:27:09

标签: c# arrays multidimensional-array associative-array

如果我在PHP中使用了这个数据结构,那么在C#中哪种数据结构是最好的?

$array = Array(
  [dummy1] => Array (
                [0] => "dffas",
                [1] => "asdas2",
                [2] => "asdasda"
              ),
  [dummy2] => Array (
                [0] => "asdasd",
                [1] => "sdfsdfs",
                [2] => "sdfsdf"
              )
)

等等。但是我需要能够动态地将数据添加到嵌套数组中,如下所示:

$array["dummy1"][] = "bopnf";

我尝试使用Hashtable,但是当我转到hashtable.add(key,value),其中key是我的dummy1,而value是其中一个数组元素时,它会抛出一个错误,指出一个元素已经包含了键。

所以我认为散列表不是解决这个问题的正确方法。

2 个答案:

答案 0 :(得分:2)

例如,您可以使用Dictionary<string, List<string>>。所以你可以这样做:

var dict=new Dictionary<string, List<string>>();
dict.add("dummy1", new List<string>() {"dffas", "asdas2", "asdasda"});
dict.add("dummy2", //etc...);

并添加数据:

dict["dummy1"].Add("bopnf");

答案 1 :(得分:0)

你获得哈希表错误的原因是因为每个键都需要是唯一的,所以这可能不是最好的方法,使用字典作为Konamiman解释是最好的

相关问题