美文网首页
C#各类型比较(Array、Dictionary)

C#各类型比较(Array、Dictionary)

作者: 86a262e62b0b | 来源:发表于2019-10-15 17:34 被阅读0次
类型 Array ArrayList List Dictionary HashSet<T>
长度 固定 不固定 不固定 不固定 不固定
是否泛型 -
申请方式 new int[] new ArrayList() new List<类型> new Dictionary<键,值> new Hashtable()
取值方式 下标 遍历 遍历 以键取值 以键取值
维度 多维 一维 一维 一维 一维
是否提供Sort

单线程程序中推荐使用 Dictionary, 有泛型优势, 且读取速度较快, 容量利用更充分。多线程程序中推荐使用 Hashtable, 默认的 Hashtable 允许单线程写入, 多线程读取, 对 Hashtable 进一步调用 Synchronized() 方法可以获得完全线程安全的类型. 而 Dictionary 非线程安全, 必须人为使用 lock 语句进行保护, 效率大减。

Dictionary:
特点:

  • 使用其键检索值的速度非常快, 接近 O (1), 因为该类是作为Dictionary<TKey,TValue>哈希表实现的。
  • 每个键都必须是唯一的。

HashSet<T>:
特点:

  • 提供高性能的设置操作
  • 集是不包含重复元素的集合, 其元素无特定顺序。
  • 集合未进行排序, 并且不能包含重复元素

补充:

  • HashSet<T>可以将类视为Dictionary<TKey,TValue>没有值的集合。
  • 如果顺序或元素复制比应用程序的性能更重要, 请考虑结合List<T> Sort使用类和方法

相关文章

  • C#各类型比较(Array、Dictionary)

    单线程程序中推荐使用 Dictionary, 有泛型优势, 且读取速度较快, 容量利用更充分。多线程程序中推荐使用...

  • 集合类型

    Collection 类型 Collection Type 数组(Array),字典(Dictionary),集合...

  • Swift学习笔记 - 集合类型

    Swift三种主要的集合类型:Array、Set、Dictionary 一、数组Array 数组的类型写法: Ar...

  • Swift - SwiftyJSON

    如果JSON数据是字典类型(Dictionary 如果JSON数据是数组类型(Array)

  • swift 快速记忆

    (一)类型 常见类型 Array dictionary 枚举enum 结构struct 协议 对象 (二)语法 流...

  • Swift中的数据类型

    1、值类型和引用类型2、Array和Dictionary还是NSMutableArray和NSMutableDic...

  • copy,mutableCopy

    对可变容器类型对象和不可变容器类型对象.array, mutableArray,dictionary,mutabl...

  • 基础部分

    1、基础的数据类型 集合类型:Array、Set 和 Dictionary数据类型:Int(整型值)、Double...

  • 从零开始Swift之集合

    Swift中提供了三种主要的集合类型,Array,Sets,Dictionary Array Swift数组中的值...

  • Swift 2.0 学习笔记 4_集合类型

    //: 集合类型 // Swift 语言提供Array、Set、和Dictionary 三种基本的集合类型用来存储...

网友评论

      本文标题:C#各类型比较(Array、Dictionary)

      本文链接:https://www.haomeiwen.com/subject/kejuyctx.html