C#中这个数组的适当数据结构是什么?
问题描述:
如果我在PHP中有这样的数据结构,那么在C#中哪种数据结构最适合它?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)
,其中关键的是我的dummy1
,和值是一个的数组元素,它会抛出一个错误,指出一个元素已经包含该键。
所以我在想一个哈希表不是解决这个问题的正确方法。
答
例如,您可以使用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");
答
你得到的错误与哈希表的原因是因为每个键必须是唯一的,所以这是可能不是最好的办法,使用字典作为Konamiman解释将是最好的
我字面上刚刚尝试过这种组合,并且即将补充它的工作,你击败了我。 如果有人知道任何更好的方法,那么请做后:) – Psytronic 2009-11-24 09:30:23