zoukankan      html  css  js  c++  java
  • C#中HashTable的用法

    命名空间

    System.Collections

    名称

    哈希表(Hashtable)

    描述

    用于处理和表现类似keyvalue的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中keyvalue键值对均为object类型,所以Hashtable可以支持任何类型的keyvalue键值对.

    二,哈希表的简单操作

    Hashtable hshTable = new Hashtable(); //  创建哈希表
    hshTable .Add("Person1",  "zhanghf");  //  往哈希表里添加键值对
    hshTable .Clear();  //移除哈希表里所有的键值对
    hshTable .Contains("Person1");   //判断哈希表里是否包含该键
    string name = (string)hshTable["Person1"].ToString(); //取哈希表里指定键的值
    hshTable.Remove("Person1"); //  删除哈希表里指定键的键值对
    IDictionaryEnumerator en = hshTable.GetEnumerator();  //  遍历哈希表所有的键,读出相应的值
    while (en.MoveNext())
                {
                   string str = en.Value.ToString(); 
                }
     

    下面控制台程序将包含以上所有操作:

    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 (DictionaryEntry de in ht)
                {
                    Console.WriteLine("Key -- {0}; Value --{1}.", de.Key, de.Value);
                }
     
                // 哈希表排序  对哈希表按key值重新排列的做法:
                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();
            }
        }
  • 相关阅读:
    Java Native Method
    SQL语句优化
    Ibatis的环境搭建以及遇到的问题解决
    Java 构建器
    SpringMVC自定义视图 Excel视图和PDF视图
    java 枚举的常见使用方法
    mysql 根据某些字段之和排序
    MFC The Screen Flickers When The Image Zoomed
    How To Debug Qmake Pro File
    Gcc And MakeFile Level1
  • 原文地址:https://www.cnblogs.com/BrokenIce/p/5903978.html
Copyright © 2011-2022 走看看