C#中HashTable的用法

时间:2022-04-05 16:12:41

首先,从命名空间开始

System.Collections

接下来进入正题.

              Hashtable的常用方法和属性:

                            01:常用属性

属性名称 说明
Count 获取包含在Hashtable中键/值对的数目
Keys 获取包含在Hashtable中键的集合
Values 获取包含Hashtable中值的集合

                           

                           02:常用方法

返回值类型 方法名称 说明
void Add(Object key,Object value) 将带有指定键和值得元素添加到HashTable中
void Remove(Object Key) 从Hashtable中移除带有特定键的元素
void Clear() 从Hashtable中移除所有元素

好了,光说不练假把式,上代码

class Program
    {
        static void Main(string[] args)
        {
            // 创建一个Hashtable实例
            Hashtable ht=new Hashtable(); 
 
            // 添加keyvalue键值对
            ht.Add("A","1");
            ht.Add("B","2");
            ht.Add("C","3");
            ht.Add("D","4");
 
            // 遍历哈希表只能用foreach来遍历,因为Hashtable不能用索引访问
//遍历key
foreach(Object item in ht.Keys)
{
                Console.WriteLine((string)item);
            }
            //遍历value
            foreach(Object item in ht.Value)
{
                Console.WriteLine((string)item);
            }


foreach (DictionaryEntry de in ht) { Console.WriteLine("Key -- {0}; Value --{1}.", de.Key, de.Value); }
// 哈希表排序 ArrayList akeys=new ArrayList(ht.Keys); akeys.Sort(); foreach (string skey in akeys) { Console.WriteLine("{0, -15} {1, -15}", skey, ht[skey]); } // 判断哈希表是否包含特定键,其返回值为true或false if (ht.Contains("A")) Console.WriteLine(ht["A"]); // 给对应的键赋值 ht["A"] ="你好"; // 移除一个keyvalue键值对 ht.Remove("C"); // 遍历哈希表 foreach (DictionaryEntry de in ht) { Console.WriteLine("Key -- {0}; Value --{1}.", de.Key, de.Value); } // 移除所有元素 ht.Clear(); // 此处将不会有任何输出 Console.WriteLine(ht["A"]); Console.ReadKey(); } }