C.NETFramework详解.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
集 合 第5章介绍了数组和Array类执行的接口。数组的大小是固定的。如果元素个数是动态的,就应使用集合类。 ListT和ArrayList是与数组相当的集合类。还有其他类型的集合:队列、栈、链表和字典。 本章介绍如何使用对象组。主要内容如下: 集合接口和类型 列表 队列 栈 链表 有序表 字典 带多个键的字典 位数组 性能 10.1 集合接口和类型 集合类可以组合为集合,存储Object类型的元素和泛型集合类。在.NET 2.0之前,不存在泛型。现在泛型集合类通常是集合的首选类型。泛型集合类是类型安全的,如果使用值类型,是不需要装箱操作的。如果要在集合中添加不同类型的对象,且这些对象不是相互派生的,例如在集合中添加int和string对象,就只需基于对象的集合类。另一组集合类是专用于特定类型的集合,例如StringCollection类专用于string类型。 提示: 泛型的内容可参见第9章。 对象类型的集合位于System.Collections命名空间;泛型集合类位于System.Collections. Generic命名空间;专用于特定类型的集合类位于System.Collections.Specialized命名空间。 当然,组合集合类还有其他方式。集合可以根据集合类执行的接口组合为列表、集合和字典。接口及其功能如表10-1所示。.NET 2.0为集合类添加了新的泛型接口,例如IEnumerableT和IListT。这些接口的非泛型版本将一个对象定义为方法的参数,而其泛型版本使用泛型类型T。 提示: 接口IEnumerable、ICollection和IList的内容详见第5章。 对集合非常重要的接口及其方法和属性如表10-1所示。 表10-1 接 口 方法和属性 说 明 IEnumerable, IEnumerableT GetEnumerator() 如果将foreach语句用于集合,就需要接口IEnumerable。这个接口定义了方法GetEnumerator(),它返回一个实现了IEnumerator的枚举。泛型接口IEnumerableT继承了非泛型接口IEnumerable,定义了一个返回EnumerableT的GetEnumerator方法。因为这两个接口具有继承关系,所以对于每个需要IEnumerable类型参数的方法,都可以传送EnumerableT对象 ICollection Count, IsSynchronized, SyncRoot, CopyTo() 接口ICollection由集合类实现。使用这个接口的方法可以在集合中添加和删除元素 ICollectionT Count,IsReadOnly, Add(),Clear(), Contains(),CopyTo() Remove() 接口ICollectionT扩展了接口IEnumerable的功能 IList IsFixedSize, IsReadOnly, Item,Add,Clear, Contains,IndexOf, Insert,Remove, RemoveAt 接口IList派生于接口ICollection。IList允许使用索引器访问集合,还可以在集合的任意位置插入或删除元素 IListT Item,IndexOf Insert,Remove 与接口ICollectionT类似,接口IListT也继承了接口ICollection。 第5章提到,Array类实现了这个接口,但添加或删除元素的方法会抛出NotSupportedException异常。在大小固定的只读集合(如Array类)中,这个接口定义的一些方法会抛出NotSupportedExceptiuon异常 (续表) 接口 方法和属性 说明 IDictionary IsFixedSize, IsReadOnly,Item, Keys,Values,Add(),Clear(),Contains(), GetEnumerator(), Remove() 接口IDictionary或IDictionaryTKey,TValue由其元素包含键和值的集合实现 IDictionaryTKey,TValue Item,Keys,Values,Add(), ContainsKey (), Remove(), TyrGetValue() IComparerT Compare() 接口IComparerT由比较器实现,通过Compare()方法给集合中的元素排序 IEqualityComparerT Equals(), GetHashCode() 接口IEqualityComparerT由一个比较器实现,该比较器可用于字典中的键。使用这

文档评论(0)

ipad0b + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档