当前位置 博文首页 > 苏州程序大白的博客:小白都能明白的构建字典中两大类

    苏州程序大白的博客:小白都能明白的构建字典中两大类

    作者:[db:作者] 时间:2021-08-23 12:43

    1、简介

    字典是一种把数据作为键值对(key-value pair)来存储的数据结构. 作为一种抽象的类, DictionaryBase类可以用来实现不同的数据结构, 其中这些数据结构全部把数据存储成键值对. 这些数据结构可能是哈希表, 链表或者其他一些数据结构类型. 本章节会讨论如何创建基础字典, 以及如何使用DictionaryBase类的继承方法. 稍后当研究更加专有的数据结构的时候将会用到这些技术。

    基于字典的数据结构的实例之一就是SortedList. 这个类是按照分类顺序基于键值来存储键值对的. 这是一种有趣的数据结构, 因为通过引用数据结构中值的索引位置也可以访问到存储在结构中的数据, 这也使得结构的行为在某些方面和数组很相像. 本章的最后会讨论SortedList类的行为。

    2、DictionaryBase类

    大家可以把字典数据结构看成是一种计算机化的词典. 要搜索的词就是关键字, 而词的定义就是值. DictionaryBase类是一种用作专有字典实现基础的抽象类。

    存储在字典中的键值对实际上是作为DictionaryEntry 对象来存储的. DictionaryEntry 结构提供了两个字段, 一个是关键字另一个是值. 在这个结构中所要关注的只是 Key 属性和Value 属性这两个属性(或方法). 当把键值对录入到字典内的时候, 这些方法会返回存储的值. 本章稍后会讨论DictionaryEntry 对象。

    就内部而言, 会把键值对存储在被称为 InnerHashTable的哈希表对象中. 本书的第12 章会详细讨论哈希表, 所以现在只要把它看成是一种有效的用来存储键值对的数据就可以了.DictionaryBase类实际上实现了来自System.Collections命名空间的接口, IDictionary.此接口是本书稍后要研究的许多类的基础, 包括ListDictionary类和Hashtable类。

    2.1、DictionaryB

    cs