C#常見的幾種集合 ArrayList,Hashtable,List<T>,Dictionary<K,V> 遍歷方法對比
更新時間:2016年03月28日 14:10:16 作者:天盡頭的那片海
本文對C#中常見集合ArrayList,Hashtable,List<T>,Dictionary<K,V>遍歷方法做了簡單的對比和介紹,有需要的朋友可以參考一下。
一、先來分別介紹一下ArrayList,Hashtable,List<T>,Dictionary<K,V>
1.ArrayList動態(tài)數(shù)組,保存值的時候比較好用
2.Hashtable以存儲鍵值對的方式存儲。value,和key
3.List<T> 和 Dictionary<K,V> 應(yīng)該是泛型吧,可以保存實(shí)體類
二、各種集合的遍歷方法演示
1.ArrayList
ArrayList list = new ArrayList(); //for遍歷 for (int i = 0; i < list.Count; i++) { SE se = (SE)list[i]; Console.WriteLine(se.Name); } //foreach遍歷 foreach (Object obj in list) { SE se = (SE)list[i]; Console.WriteLine(se.Name); }
2.Hashtable
Hashtable list = new Hashtable(); //Hashtable不能用索引訪問,所以遍歷一個Hashtable只能用foreache()方法 //遍歷Key foreach (Object obj in list.Keys) { Console.WriteLine((string)obj); } //遍歷Value foreach (Object obj in list.Values) { SE se = (SE)obj; Console.WriteLine(se.Name); } //同時遍歷,DictionaryEntry一個結(jié)構(gòu) foreach (DictionaryEntry en in list) { Console.WriteLine(se.Keys); COnsole.WriteLine(((SE)en.Value).Name); }
3.List<T>
//for遍歷 for (int i = 0; i < list.Count; i++) { //遍歷時不需要類型轉(zhuǎn)換 Console.WriteLine(list[i]); } //foreach遍歷 foreach (SE obj in list) { //遍歷時不需要類型轉(zhuǎn)換 Console.WriteLine(obj); }
4.Dictionary<K,V>
//遍歷Values foreach (SE se in list.Values) { //遍歷時不需要類型轉(zhuǎn)換 Console.WriteLine(se); } //同時遍歷 foreach (KeyValuePair<string, SE> en in list) { Console.WriteLine(en.Key); Console.WriteLine(en.Value.Name); } //KeyValuePair<TKey,TValue>是一個泛型結(jié)構(gòu)
相關(guān)文章
C#實(shí)現(xiàn)Winform無邊框移動的方法
這篇文章主要介紹了C#實(shí)現(xiàn)Winform無邊框移動的方法,涉及C#針對WinForm窗口操作的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-09-09淺談C#中的for循環(huán)與foreach循環(huán)
本篇文章主要介紹了C#中的for循環(huán)與foreach循環(huán)的相關(guān)知識,具有很好的參考價值。下面跟著小編一起來看下吧2017-05-05