ArrayList 与 List的区别 数组与集合的区别

ArrayList是一种非泛型集合类型,允许用户存储任何数据类型的对象,

List 是一种泛型集合类型,允许用户存储声明时 List 指定的数据类型的对象。它是一个非常强类型的集合,

var arrayList = new ArrayList();

arrayList.Add(1); // 整型

arrayList.Add(2);

arrayList.Add("3"); // string 字符串

var list = new List<int>();

list.Add(1); // 只允许存储整型数据

list.Add(2);

list.Add(3);

当我们使用 ArrayList 时,通常需要我们对正在访问的对象进行装箱或拆箱来避免一些错误发生。但对于List来说,不存在这个情况。

列表是类型安全的,我们根本不需要进行任何类型转换

一般来说,List 比 ArrayList 更节省内存,因为它不必为集合中的每个元素存储对象引用。

List 比 ArrayList 的内存效率更高,因为类型安全所以List也比 ArrayList 具有更高的性能效率。与 ArrayList 相比, List 具有更好的 API 支持,通过它提供的方法和属性,可以更快地访问元素。,我们了解了 ArrayList 和 List 以及何时使用它们。很明显,List 在任何比较中都胜过 ArrayList,因为它更好,更高效且类型安全。

数组和集合概念,以及它们的区别:

数组一般是相同数据类型(object[]数组元素类型可以不同)的元素按一定顺序排列的集合。

数组是集合,集合不一定是数组。

数组读取(查询)速度比集合快。集合是线性表,在插入,添加,删除数据时比较方便,性能比数组会高。

数组存储的类型不限制。集合存储的类型只能是引用类型。

C#中的集合(Collection)和数组(Array)是两种不同的数据结构,它们之间有以下主要区别:

1。定义方式不同:集合是使用集合类定义的,如List或HashSet。数组是使用类型和大小显式定义的。

2。大小不同:数组的大小在创建后无法更改,而集合的大小可以根据需要动态增长。

3。内存布局不同:数组在内存中是连续的,而集合通常不是。

4。性能不同:访问数组元素通常比访问集合元素快,因为集合元素访问时可能需要进行装箱和拆箱操作。

5。索引访问:数组可以通过索引直接访问元素,而集合则需要使用迭代器或者在.NET 2.0及以上版本中使用foreach循环。

6。数据类型不同:数组可以存储基本数据类型(值类型),也可以存储引用类型,而集合只能存储引用类型,因为它们都继承自System.Object。

相关推荐
时光追逐者16 分钟前
分享6个.NET开源的AI和LLM相关项目框架
人工智能·microsoft·ai·c#·.net·.netcore
friklogff44 分钟前
【C#生态园】提升C#开发效率:深入了解自然语言处理库与工具
开发语言·c#·区块链
__water9 小时前
『功能项目』回调函数处理死亡【54】
c#·回调函数·unity引擎
__water9 小时前
『功能项目』眩晕图标显示【52】
c#·unity引擎·动画事件
__water10 小时前
『功能项目』第二职业法师的平A【57】
c#·unity引擎·魔法球伤害传递
__water12 小时前
『功能项目』战士的伤害型技能【45】
c#·unity引擎·战士职业伤害型技能
君莫愁。13 小时前
【Unity】检测鼠标点击位置是否有2D对象
unity·c#·游戏引擎
Lingbug14 小时前
.Net日志组件之NLog的使用和配置
后端·c#·.net·.netcore
咩咩觉主14 小时前
Unity实战案例全解析:PVZ 植物卡片状态分析
unity·c#·游戏引擎
Echo_Lee014 小时前
C#与Python脚本使用共享内存通信
开发语言·python·c#