国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

在C#中應用哈希表

2024-07-21 02:27:06
字體:
來源:轉載
供稿:網友

      一,哈希表(hashtable)簡述

     在.net framework中,hashtable是system.collections命名空間提供的一個容器,用于處理和表現類似key/value的鍵值對,其中key通常可用來快速查找,同時key是區分大小寫;value用于存儲對應于key的值。hashtable中key/value鍵值對均為object類型,所以hashtable可以支持任何類型的key/value鍵值對.

       二,哈希表的簡單操作

      在哈希表中添加一個key/value鍵值對:hashtableobject.add(key,value);
 在哈希表中去除某個key/value鍵值對:hashtableobject.remove(key);
 從哈希表中移除所有元素:           hashtableobject.clear();
 判斷哈希表是否包含特定鍵key:      hashtableobject.contains(key);
 下面控制臺程序將包含以上所有操作:

using system;
using system.collections; //使用hashtable時,必須引入這個命名空間
class hashtable
{
  public static void main()
  {
  hashtable ht=new hashtable(); //創建一個hashtable實例
  ht.add("e","e");//添加key/value鍵值對
  ht.add("a","a");
  ht.add("c","c");
  ht.add("b","b");
  string s=(string)ht["a"];
  if(ht.contains("e")) //判斷哈希表是否包含特定鍵,其返回值為true或false
    console.writeline("the e key:exist");
  ht.remove("c");//移除一個key/value鍵值對
  console.writeline(ht["a"]);//此處輸出a
  ht.clear();//移除所有元素
  console.writeline(ht["a"]); //此處將不會有任何輸出
  }
}


       三,遍歷哈希表

      遍歷哈希表需要用到dictionaryentry object,代碼如下:
 for(dictionaryentry de in ht) //ht為一個hashtable實例
 {
   console.writeline(de.key);//de.key對應于key/value鍵值對key
   console.writeline(de.value);//de.key對應于key/value鍵值對value
 }

        四,對哈希表進行排序

       對哈希表進行排序在這里的定義是對key/value鍵值對中的key按一定規則重新排列,但是實際上這個定義是不能實現的,因為我們無法直接在hashtable進行對key進行重新排列,如果需要hashtable提供某種規則的輸出,可以采用一種變通的做法:
 arraylist akeys=new arraylist(ht.keys); //別忘了導入system.collections
 akeys.sort(); //按字母順序進行排序
 for(string skey in akeys)
 {
   console.write(skey + ":");
   console.writeline(ht[skey]);//排序后輸出
 }

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 金秀| 汤原县| 宜宾县| 怀集县| 轮台县| 巩义市| 明水县| 平远县| 四会市| 莱阳市| 图木舒克市| 保亭| 闸北区| 龙口市| 武乡县| 高平市| 巫溪县| 上栗县| 伊宁县| 原阳县| 德州市| 长武县| 双牌县| 潞城市| 黄大仙区| 寻乌县| 晋江市| 贵阳市| 扶风县| 清涧县| 荃湾区| 深圳市| 南昌县| 江山市| 区。| 辽中县| 丹江口市| 泊头市| 孝义市| 鸡泽县| 上虞市|