C#集合基础和运用.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C#集合基础与运用 1.集合接口与集合类型 (1)集合的命名空间 大多数集合类都可以在System.Collections和System.Collections.Generic名称空间中找到。泛型集合位于System.Collections.Generic名称空间中;专用于特定类型的集合类位于System.Collections.Specialized名称空间中;线程安全的集合位于System.Collections.Concurrent名称空间中。 (2)集合接口介绍 1、IEnumerable与IEnumerator接口 其实IEnumerable接口是非常的简单,只包含一个抽象的方法GetEnumerator(),它返回一个可用于循环访问集合的IEnumerator对象。 ??? public interface IEnumerable ??? { ??????? IEnumerator GetEnumerator(); } IEnumerator对象有什么呢?它是一个真正的集合访问器,没有它,就不能使用foreach语句遍历集合或数组,因为只有IEnumerator对象才能访问集合中的项。IEnumerator接口定义了:一个Current属性用来获取当前集合中的项;MoveNext方法将游标的内部位置向前移动;Reset方法将枚举数设置为其初始位置,该位置位于集合中第一个元素之前。 ??? public interface IEnumerator ??? { ??????? object Current { get; } ??????? bool MoveNext(); ??????? void Reset(); } 一个collection要支持foreach进行遍历,就必须实现IEnumerable,并以某种方式返回迭代器对象:IEnumerator。 2、集合和列表实现的接口表 接口 说明 IEnumerableT 如果foreach语句用于集合,就需要此接口。 ICollectionT 此集合定义了Count属性、CopyTo、Add、Remove、Clear方法 IListT 可以通过位置访问几何元素 ISetT 此集合不允许有重复的元素 IDictionaryK,V 含有键值对的集合 ILookupK,V 含有键值对的集合,但可以通过一个键包含多个值 IComparerT 集合元素比较器,用于集合元素的排序 IEqualityComparerT 用于字典集合的比较器 IProducerConsumerCollectionT 线程安全的集合 2.集合的基本操作 (1)创建集合 使用默认的构造函数创建一个空集合,元素添加到集合之后,集合的容量就会扩大为4。当集合的容量被使用完,且还在向集合中添加元素时,集合的容量就会扩大成原来的2倍!可使用Capacity属性设置或访问集合的容量,使用Count属性访问集合的元素个数。也可使用TrimExcess方法调整集合容量,节省内存! ??? class Program ??? { ??????? static void Main(string[] args) ??????? { ??????????? Listint list = new Listint();//Listint list = new Listint(3) ??????????? for (int i = 0; i 1025; i++) ??????????? { ??????????????? if (list.Count == (list.Capacity)) ??????????????? { ??????????????????? Console.WriteLine(容量使用量:+list.Count + / + list.Capacity); ??????????????? } ??????????????? list.Add(i); ??????????? } ??????????? Console.WriteLine(容量使用量: + list.Count + / + list.Capacity); ??????????? list.TrimExcess();//调整容量 ??????????? Console.WriteLine(容量使用量: + list.Count + / + list.Capacity); ??????????? Console.Read(); ??????? } } 创建集合时可以为集合设置初始值,如下: Listint list = new Listint() { 1,2,3,4,5,6,7,8,9,0}; Liststring list

文档评论(0)

xiaofei2001128 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档