为了账号安全,请及时绑定邮箱和手机立即绑定

C#中的ArrayList与List<>

C#中的ArrayList与List<>

Qyouu 2019-06-25 16:37:41
C#中的ArrayList与List<>之间的区别是什么?ArrayList和List<>在C#?只是List<>有一种类型ArrayList不是吗?
查看完整描述

3 回答

?
梦里花落0921

TA贡献1772条经验 获得超6个赞

使用List<T>您可以防止铸造错误。避免使用运行时铸造错误

例子:

这里(使用)ArrayList)可以编译此代码,但稍后会看到执行错误。

ArrayList array1 = new ArrayList();array1.Add(1);array1.Add("Pony"); //No error at compile processint total = 0;foreach (int num in array1){
 total += num; //-->Runtime Error}

如果你用List,您可以避免以下错误:

List<int> list1 = new List<int>();list1.Add(1);//list1.Add("Pony"); //<-- Error at compile processint total = 0;foreach (int num in list1 ){
 total += num;}

参考资料:MSDN


查看完整回答
反对 回复 2019-06-25
?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

以补充上述各点。使用ArrayList在64位操作系统中,内存比32位操作系统占用2x内存。同时,通用列表List<T>将使用比ArrayList.

例如,如果我们使用ArrayList在32位的19 MB中,64位需要39 MB。但是如果你有一个通用列表List<int>在32位的8MB中,64位仅需8.1MB,这与ArrayList相比相差481%。

资料来源:用于原语类型和64位的ArrayList与泛型列表


查看完整回答
反对 回复 2019-06-25
  • 3 回答
  • 0 关注
  • 861 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信