gpt4 book ai didi

C#常见的几种集合 ArrayList,Hashtable,List<T>,Dictionary<K,V> 遍历方法对比

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 28 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章C#常见的几种集合 ArrayList,Hashtable,List<T>,Dictionary<K,V> 遍历方法对比由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

1、先来分别介绍一下ArrayList,Hashtable,List<T>,Dictionary<K,V> 。

1.ArrayList动态数组,保存值的时候比较好用 2.Hashtable以存储键值对的方式存储。value,和key 3.List<T> 和 Dictionary<K,V> 应该是泛型吧,可以保存实体类 。

2、各种集合的遍历方法演示 。

1.ArrayList 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
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 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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一个结构
foreach (DictionaryEntry en in list)
{
   Console.WriteLine(se.Keys);
   COnsole.WriteLine(((SE)en.Value).Name);
}

3.List<T> 。

?
1
2
3
4
5
6
7
8
9
10
11
12
//for遍历
for ( int i = 0; i < list.Count; i++)
{
   //遍历时不需要类型转换
   Console.WriteLine(list[i]);
}
//foreach遍历
foreach (SE obj in list)
{
   //遍历时不需要类型转换
   Console.WriteLine(obj);
}

4.Dictionary<K,V> 。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//遍历Values
foreach (SE se in list.Values)
{
   //遍历时不需要类型转换
   Console.WriteLine(se);
}
 
//同时遍历
foreach (KeyValuePair< string , SE> en in list)
{
   Console.WriteLine(en.Key);
   Console.WriteLine(en.Value.Name);
}
//KeyValuePair<TKey,TValue>是一个泛型结构

最后此篇关于C#常见的几种集合 ArrayList,Hashtable,List<T>,Dictionary<K,V> 遍历方法对比的文章就讲到这里了,如果你想了解更多关于C#常见的几种集合 ArrayList,Hashtable,List<T>,Dictionary<K,V> 遍历方法对比的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com