当前位置: 首页 > wzjs >正文

广告网页设计培训轻松学梧州网站seo

广告网页设计培训轻松学,梧州网站seo,合肥网站建设教程,地方门户网站还能做吗List是一个非常常用的泛型集合类,它位于 System.Collections.Generic 命名空间下,本质上是一个动态数组,它提供了一系列方便的方法来管理和操作元素,例如添加、删除、查找等。与传统的数组相比,List可以根据需要动态调…

List是一个非常常用的泛型集合类,它位于 System.Collections.Generic 命名空间下,本质上是一个动态数组,它提供了一系列方便的方法来管理和操作元素,例如添加、删除、查找等。与传统的数组相比,List可以根据需要动态调整大小,使用起来更加灵活。

.Net4.8源码地址:
list.cs (microsoft.com)https://referencesource.microsoft.com/#mscorlib/system/collections/generic/list.cs

内部结构:

1.主要的字段属性:


_defaultCapacity:表示List默认的容量是4。当创建一个List对象且未指定初始容量时,会使用这个默认值。
_items:这是一个泛型数组,用于实际存储 List 中的元素。
_size:表示当前 List中实际存储的元素数量。它反映了列表中有效元素的个数
_version:用于记录 List的版本号。每当对列表进行添加、删除等修改操作时,这个版本号会增加。它主要用于在迭代列表时检测列表是否被修改,如果被修改则会抛出异常,以保证迭代的安全性。
在源码中可以看到对_version的操作如下:





在上述函数(不完全列举)中都有_version++的操作
_emptyArray:这是一个静态只读的空数组,用于在某些情况下表示空列表。

Capacity:返回或者设置List的容量。
Count:返回List的实际存储元素的数量

2.构造函数:

1.当使用无参构造函数创建List对象时,会将_items初始化为_emptyArray,

此时列表的初始容量为 0,当有元素添加进来时,会根据需要进行扩容。 
2. 指定初始容量的构造函数:允许指定List的初始容量。如果传入的容量小于 0,会抛出ArgumentOutOfRangeException的异常,如果容量为 0,则将_items初始化为_emptyArray;否则,创建一个指定容量的数组并赋值给_items。
3.从现有集合初始化的构造函数:该构造函数接受一个实现了 IEnumerable<T> 接口的集合作为参数。如果传入的集合为 null,会抛出 ArgumentNullException 异常。如果集合是 ICollection<T> 类型,会根据集合的元素数量创建相应大小的数组,并将集合中的元素复制到 _items 数组中;否则,会使用迭代器遍历集合,并通过 Add 方法逐个添加元素。

动态扩容机制:

list扩容一般发生在增加元素的时候,所以首先找到增加元素的函数,如下:

也就是说默认扩容为当前容量的 2 倍,若仍不足则直接扩容到所需的最小容量
也可以通过设置Capacity的大小,来动态的将原List数组的元素复制到新的数组中。

主要方法:

1.增加:

2.插入:

3.删除:

4.查找:

5.排序:

未完待续。。。

http://www.dtcms.com/wzjs/450245.html

相关文章:

  • 汕头网站制作找哪里网络推广的方式有哪些
  • 大安区网站建设宣传网站有哪些
  • 备案网站电子照幕布免费网站推广工具
  • 网站 流程优化微信朋友圈广告
  • 建设科技网络网站的意义和目的推广公司哪家好
  • 电脑网站 源码软文广告示范
  • 英文网站建设口碑好企业网站类型有哪些
  • 百度h5收费吗越秀seo搜索引擎优化
  • 做美容美发的网站有哪些简阳seo排名优化课程
  • 何苦做游戏网站保定seo网络推广
  • 最牛的网站建设东莞网站推广哪里找
  • 小型网站设计及建设论文范本网络营销广告策划
  • 哈尔滨寸金网站建设价格seo外包费用
  • 邢台提供网站建设公司哪家好建网站seo
  • 域名注册需要多少钱重庆seo海洋qq
  • 快速优化网站建设百度应用商店下载安装
  • 公益网站建设那家好营销与销售的区别
  • 网站的建设流程具体有哪些seo搜索引擎优化技术
  • 有限责任公司欠债找谁南宁seo规则
  • 网站建设规划方案ppt模板网页
  • 网站建设公司上海做网站公司网站推广的基本手段有哪些
  • 制作网站难还是编程难如何查看百度指数
  • 带有后台的网站开发软件大作设计网站
  • 网站建设项目步骤网站推广怎么做有效果
  • 杭州工业设计公司排名前十强seo顾问赚钱吗
  • 响应式网站建设公司‘渠道营销推广方案
  • 网站建设分为哪些方面国际时事新闻2022最新
  • 排版设计模板网站seo网络营销外包公司
  • 1688网站怎么做分销电商培训心得体会
  • 律师怎么做网站武汉外包seo公司