数组和arraylist的区别

 我来答
简乱千因1S
2017-11-10 · TA获得超过2270个赞
知道大有可为答主
回答量:1003
采纳率:100%
帮助的人:212万
展开全部
ArrayList底层是变长数组维护的,不需要定义其大小,如果长度不够了就会自动扩展为原来长度的一倍;
数组的大小在定义的时候已经是个固定的值,不会自动扩展,数组的效率比集合的效率高,各有侧重点。
具体如下:
一、 数组
优点:在内存中时连续的,速度较快,操作简单。
缺点:定义数组时要定义其长度,不是很灵活,过长过短都会造成问题。不方便进行数据的添加、插入和移除。
例如:int [] i=new int[2];
i[0]=111;
i[1]=123;//赋值
i[1]=1234;//修改
二、集合ArrayList
优点:命名空间System.Collections下的一部分。大小是动态扩充与收缩的。在声明ArrayList对象时不需要指定它的长度。ArrayList继承了IList接口,可以很方便的进行数据的添加、插入和移除.
缺点:当向集合插入不同类型的数据后(ArrayList将数据当作object存储),在进行数据处理时容易出现类型不匹配的错误,使用时需要进行类型转换处理,存在装箱与拆箱操作,造成性能大量损耗的现象。
例如:ArrayList list = new ArrayList();
list.Add("aa");
list.Add(11);
list[1] = 123;//修改
移除list.Remove(123);
list.RemoveAt(0);
匿名用户
2017-11-10
展开全部
arrayList 长度可变 存储的数据类型可变 数组在声明的时候要类型 和长度
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式