2011-11-25 201 views
0

我想存储阵列或链接的列表中的哈希表EX:如何在c#中存储哈希表?

 array [,] m = new array(){"doucument",13.4}; 
     hashtable h = new hashtable(); 
     h.add(1,m); 

请帮助我如何保存这个数组中的哈希表,如果我能,如何获得元素这个数组? 错误:嵌套数组初始化预计从你的问题是不明显线1

     array [,] m = new array(){"doucument",13.4}; 
+3

你是否在谈论.NET 1.1的非泛型'Hashtable'类?任何不使用“字典<,>”的理由?也不清楚究竟涉及哪些类型......如果你可以花更多的精力做一个更完整的例子,我想我们可以提供更多的帮助。 –

+1

你的例子看起来不像c#。 – jrummell

回答

0
var dictionary = new Dictionary<int, object[]>(); 
    dictionary.Add(1, new object[] {"doucument",13.4}); 

    var arr = dictionary[1]; 
+0

你能解释一下吗:var dictionary = new Dictionary (); – xxxman

+0

@xxxman它基本上创建了一个从整数到对象数组的字典。 var关键字指示实例的类型,如果由编译器推断的话。它相当于Dictionary dictionary = new Dictionary (); –

0

如果这是一个键值集合或只值。只是把它扔在那里,你应该知道,在.NET 3.5及以上,你可以使用一个HashSet,例如:

HashSet<int> numbers = new HashSet<int>(); 
0

只是让你的语法错误出你的代码,它会很好地工作:

 using System.Collections; 

     Array[,] m = new Array[,]{"document",13.4}; 
     Hashtable h = new Hashtable(); 
     h.Add(1,m); 

访问存储的元素:

 m = (Array[,])h[1]; 

当然,我个人更喜欢使用System.Collections.Generic.Dictionary;

+0

Array [,] m = new Array [,] {“document”,13.4};错误预期会嵌套数组初始值设定项 – xxxman