众所周知List在内存中是连续存储的,所以索引速度是非常快的,对于元素的修改和赋值也是非常方便的,但是list有个缺点就是固定长度,在声明的时候必须指定长度,如果长度过长会造成内存的浪费,如果长度过短则会溢出,而且对于元素的插入也是非常麻烦的,所以就有了ArrayList。ArrayList的大小是根据元素的多少进行动态的扩展或缩小的,所以ArrayList是不需要指定长度的,而且ArrayList继承自List接口,所以对于元素的插入、移除、修改也是非常方便的。但是ArrayList也是有缺点的,因为它会把所有添加进来的元素当成object,所以对于不同类型的元素没有区分,这样在进行数据处理的时候会出现类型不匹配的错误,就算我们很小心的插入同类型数据,我们在处理的时候也要转换成对应的原类型数据,所以就会出现装箱拆箱的可能,会造成很大的性能消耗。
List与ArrayList的区别
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 一.线性表 定义:零个或者多个元素的有限序列。也就是说它得满足以下几个条件: ①该序列的数据元素是有限的。 ②...
- 数组在C#中是最早出现的。它在内存中是连续的存储的,所以索引速度很快,而且赋值与修改元素也很简单。可以利用偏移地...