對C 中Hashtable和ArryList的理解

2021-05-22 01:43:08 字數 1385 閱讀 4261

1.hashtabel

在.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);

如:hashtable ht=new hashtable();

ht.add(×,×)

… …遍歷雜湊表

遍歷雜湊表需要用到dictionaryentry object,**如下:

foreach(dictionaryentry de in ht) //ht為乙個hashtable例項

2. arrylist(陣列列表)

arraylist物件就是乙個可變長的陣列,可以根據需要新增元素.使用arraylist的方法可以向陣列列表中新增元素,或取出,修改某個元素.

如:arraylist myarraylist = new arraylist();

myarraylist.add("caoxi");

myarraylist.clear();

arraylist中取出的物件都是object型別,使用前要將其轉換成合適的型別.

arraylist thearraylist = new arraylist();

thearraylist.add("1");

thearraylist.add("2");

string s = (string)thearraylist[0];

string s1 = (string)thearraylist[1];

注意contains()方法        如果arraylist中包含引數提供的物件,則返回true,否則返回false

if (thearraylist.contains("1"))      //判斷字元"1"是否存在於arraylist

關於arrylist的另外一種用法:

arraylist objary=new arraylist();

//取出資料";}

response.write(stronline);

C 中Hashtable和HashMap的區別

hashtable的應用非常廣泛,hashmap是新框架中用來代替hashtable的類,也就是說建議使用hashmap,不要使用hashtable。可能你覺得hashtable很好用,為什麼不用呢?這裡簡單分析他們的區別。1.hashtable的方法是同步的,hashmap未經同步,所以在多執行緒...

Zend引擎中對HashTable的各種操作

一邊學習c,一邊研究zend引擎,邊學習邊總結。hashtable的初始化 zend api int zend hash init hashtable ht,uint nsize,hash func t phashfunction,dtor func t pdestructor,zend bool ...

C 中HashTable簡介和使用用法

一 簡介 名詞介紹 雜湊表 hash table,也叫雜湊表 是根據關鍵碼值 key value 而直接進行訪問的資料結構。也就是說,它通過把關鍵碼值對映到表中乙個位置來訪問記錄,以加快查詢的速度。這個對映函式叫做雜湊函式,存放記錄的陣列叫做雜湊表。hashtable 表的優點 hashtable是...