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#對XtraGrid控件實(shí)現(xiàn)主從表關(guān)系綁定
這篇文章介紹了C#對XtraGrid控件實(shí)現(xiàn)主從表關(guān)系綁定的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06
C#實(shí)現(xiàn)的微信網(wǎng)頁授權(quán)操作邏輯封裝示例
這篇文章主要介紹了C#實(shí)現(xiàn)的微信網(wǎng)頁授權(quán)操作邏輯封裝,分析了微信網(wǎng)頁授權(quán)操作的原理、步驟并給出了C#實(shí)現(xiàn)的網(wǎng)頁授權(quán)操作邏輯封裝類,需要的朋友可以參考下2016-10-10

