自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

總結(jié)C#哈希表的用法

開(kāi)發(fā) 后端
本文總結(jié)了C#哈希表常用的方法,如何遍歷C#哈希表和對(duì)C#哈希表進(jìn)行排序等,供大家參考。

C#哈希表,可能對(duì)于很多同行來(lái)說(shuō)已經(jīng)很熟悉.剛開(kāi)始接觸時(shí)有點(diǎn)陌生,后來(lái)用多了也就熟了.當(dāng)然網(wǎng)上關(guān)于這一個(gè)知識(shí)點(diǎn)的介紹很多,不過(guò)這并不妨礙我個(gè)人對(duì)此作出自己的總結(jié)與理解.

在.NET Framework中,Hashtable是System.Collections命名空間提供的一個(gè)容器,用于處理和表現(xiàn)類似key/value的鍵值對(duì),其中key通??捎脕?lái)快速查找,同時(shí)key是區(qū)分大小寫;value用于存儲(chǔ)對(duì)應(yīng)于key的值。Hashtable中key/value鍵值對(duì)均為object類型,所以Hashtable可以支持任何類型的key/value鍵值對(duì).

因此在用的過(guò)程中,需引用:using System.Collections;下面列一下常用的用法,右邊給出相應(yīng)的注釋.

一.常用的方法:

  1.   Hashtable hshTable = new Hashtable(); //  創(chuàng)建哈希表   
  2.  
  3.         hshTable .Add("Person1",  "zhanghf");  //  往哈希表里添加鍵值對(duì)   
  4.  
  5.         hshTable .Clear();  //移除哈希表里所有的鍵值對(duì)   
  6.  
  7.         hshTable .Contains("Person1");   //判斷哈希表里是否包含該鍵   
  8.  
  9.         string name = (string)hshTable["Person1"].ToString(); //取哈希表里指定鍵的值   
  10.  
  11.         hshTable.Remove("Person1"); //  刪除哈希表里指定鍵的鍵值對(duì)   
  12.  
  13.         IDictionaryEnumerator en = hshTable.GetEnumerator();  //  遍歷哈希表所有的鍵,讀出相應(yīng)的值  
  14.         while (en.MoveNext())  
  15.             {  
  16.                string str = en.Value.ToString();  
  17.             } 

 二.遍歷C#哈希表:

遍歷哈希表需要用到DictionaryEntry Object,代碼如下:

  1.   for(DictionaryEntry de in ht) //ht為一個(gè)Hashtable實(shí)例  
  2.   {  
  3.    Console.WriteLine(de.Key);//de.Key對(duì)應(yīng)于key/value鍵值對(duì)key  
  4.    Console.WriteLine(de.Value);//de.Key對(duì)應(yīng)于key/value鍵值對(duì)value   
  5.  
  6.   } 

三.對(duì)C#哈希表進(jìn)行排序

對(duì)哈希表進(jìn)行排序在這里的定義是對(duì)key/value鍵值對(duì)中的key按一定規(guī)則重新排列,但是實(shí)際上這個(gè)定義是不能實(shí)現(xiàn)的,因?yàn)槲覀儫o(wú)法直接在Hashtable進(jìn)行對(duì)key進(jìn)行重新排列,如果需要Hashtable提供某種規(guī)則的輸出,可以采用一種變通的做法:

  1.    ArrayList akeys=new ArrayList(ht.Keys); //記得導(dǎo)入System.Collections  
  2.    akeys.Sort(); //調(diào)用了akeys的按字母順序進(jìn)行排序Sort,這個(gè)很容易單獨(dú)實(shí)現(xiàn)  
  3.    for(string skey in akeys)  
  4.    {  
  5.     Console.Write(skey + ":");  
  6.     Console.WriteLine(ht[skey]);//排序后輸出  
  7.    }  

C#哈希表在編程中用的比較多,功能強(qiáng)大,掌握并能熟悉運(yùn)用是一件很好的事情!

【編輯推薦】

  1. 配置C#命令行編譯器的步驟介紹
  2. C#連接數(shù)據(jù)庫(kù)的方法簡(jiǎn)介
  3. 如何在C#添加鼠標(biāo)右鍵菜單
  4. .Net Framework中的委托與事件
  5. Observer設(shè)計(jì)模式范例詳解
責(zé)任編輯:book05 來(lái)源: hi.baidu
相關(guān)推薦

2010-07-16 13:10:36

Perl哈希表

2009-06-24 09:52:21

哈希表

2009-08-20 16:45:03

C#哈希值

2011-05-23 13:27:53

2011-03-16 09:42:27

Oracle臨時(shí)表

2009-09-07 16:13:56

C# MessageB

2009-07-30 15:24:13

C#析構(gòu)函數(shù)C#構(gòu)造函數(shù)

2009-08-11 15:44:05

C#基本技巧

2009-08-13 18:02:50

C#基礎(chǔ)概念

2009-08-13 18:21:52

C#學(xué)習(xí)筆記

2009-08-17 17:04:29

C#轉(zhuǎn)義字符

2011-04-19 16:38:00

對(duì)象指針指針C++

2011-04-07 16:34:05

staticC++

2009-08-27 16:54:59

C#開(kāi)發(fā)技巧

2024-12-24 07:38:44

C#串口通信

2009-08-26 14:01:33

C# using用法

2009-08-26 18:10:44

C# using的用法

2009-08-26 18:13:55

C#多線程lock

2011-04-25 14:42:10

C#lock

2011-07-06 10:47:52

C#using
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)