• C#(99):集合概述


    一、概述

    1、集合命令空间:

    • System.Collections.Specialized:专用于特性类型的集合类
    • System.Collections.Concurrent:线程安全的集合类
    • System.Collections.Immutable:不可变的集合类

    2、集合接口

    泛型集合层次关系图

    image

    •   IEnumerable:如果将foreach语句用于集合,就需要IEnumerable接口。这个接口定义了方法GetEnumerable(),它返回一个实现了IEnumerable接口的枚举。
    •   ICollection:ICollection接口由泛型集合类实现。使用这个接口可以获得集合中的元素个数(Count属性),把集合复制到数组中(CopyTo()方法),还可以从集合中添加和删除元素(Add()、Remove()、Clear())
    •   IList:IList接口用于可通过位置访问其中的元素列表,这个接口定义了一个索引器,可以在集合的指定位置插入或删除某些项(Insert()和RemoveAt()方法)。IList集合派生自ICollection接口。
    •   ISet:ISet接口由集实现。ISet<T>是.NET 4新引入的接口,表示唯一值集。它反过来应用到了.NET 3.5中的HashSet<T>上,以及.NET 4引入的一个新的实现——SortedSet<T>。集允许合并不同的集,获得两个的交集,检查两个集是否重叠。ISet接口派生自ICollection接口。
    •   IDictionary:IDictionary接口包含键和值的泛型集合类实现。使用这个接口可以访问所有的键和值,使用键类型的索引器可以访问某些项,还可以添加和删除某些项。
    •   ILookup:Net3.5的新接口,ILookup接口类似于IDictionary接口,实现该接口的集合有键和值。且可以一个键包含多个值。
    •   IComparer:IComparer接口由比较器实现。通过Compare()方法给集合中的元素排序。
    •   IEqualityComparer:  IEqualityComparer接口由一个比较器实现,该比较器可用于字典中的键。使用这个接口,可以对对象进行相等性比较。

    3、集合类

    各集合类底层接口关系图

    image

  • 相关阅读:
    分解质因数
    第十一次作业
    第十次作业
    第九次作业
    第八次作业
    Radar Installation
    Stall Reservations
    Sunscreen
    天才ACM
    奇数码问题
  • 原文地址:https://www.cnblogs.com/springsnow/p/12976169.html
Copyright © 2020-2023  润新知