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。

相关推荐
一名用户1 小时前
unity实现自定义粒子系统
c#·unity3d·游戏开发
钢铁男儿4 小时前
C# 类和继承(扩展方法)
java·servlet·c#
爱炸薯条的小朋友4 小时前
C#由于获取WPF窗口名称造成的异常报错问题
windows·c#·wpf
Rose 使者6 小时前
全球IP归属地查询接口如何用C#进行调用?
c#·api·ip地址
~plus~8 小时前
Harmony核心:动态方法修补与.NET游戏Mod开发
开发语言·jvm·经验分享·后端·程序人生·c#
htj108 小时前
C# 使用正则表达式
正则表达式·c#
~plus~8 小时前
WPF八大法则:告别模态窗口卡顿
开发语言·经验分享·后端·程序人生·c#
就是有点傻8 小时前
使用WPF的Microsoft.Xaml.Behaviors.Wpf中通用 UI 元素事件
c#
qq_297908019 小时前
C#报价系统陈列展示成本核算系统项目管理系统纸品非纸品报价软件
sqlserver·c#·.net·开源软件
CoderIsArt18 小时前
C#中的CLR属性、依赖属性与附加属性
c#