请说的...简单一点点只知道好像都是KEY 和VALUE然后Hashtable是无序的

解决方案 »

  1.   

    Hashtable需要拆/装箱,效率比较低;
      

  2.   

    Hashtable 内的每一组对象就是一个DictionaryEntry 例如我们要循环hashtable
    foreach (DictionaryEntry de in myHashtable) {...}
      

  3.   

    在。Net 里面,基本的字典是由类HashTable来表示的,MicroSoft提供了一个已经建立好的
    .Net基类stringDictionary,如果主键是字符串就可以用它来代替HashTable。
    也就是是说 HashTable是字典的一个具体的表现形式。但是你可以自己定义与HashTable不同的字典。
      

  4.   

    前者为一个键值对
    后者为键值对的集合,当然集合中可以包含多个或者一个键值对或者null
      

  5.   

    你应该问“Dictionary和Hashtable有什么区别”才有意义。你那种问法就好像在问一棵树和一片树林有什么区别了。
      

  6.   

    用DictionaryEntry来遍历HashTable
    而Directory<T,T>是HashTable的泛型模式,但他们解决冲突的方法是不一样的。
    用KeyValuePair<T,T>来遍历Directory<T,T>
      

  7.   

    Dictionary泛型 中的任何键都必须是唯一的。键不能为空引用,但是如果值类型 TValue 为引用类型,该值则可以为空。Hashtable每个元素都是一个存储在 DictionaryEntry 对象中的键/值对。键不能为 空引用,但值可以。C# 语言中的 foreach 语句(需要集合中每个元素的类型。由于 Hashtable 的每个元素都是一个键/值对,因此元素类型既不是键的类型,也不是值的类型。而是 DictionaryEntry 类型。例如: 
    foreach (DictionaryEntry myDE in myHashtable) {...}