• 主页
  • ASP
  • .NET Framework
  • Web Services
  • VB
  • VC
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • LINQ

数组与List<>的选择

离子漂浮物 2008-08-18 09:24:35

string[] aList = new string[10];
int x = 0;
for (; x < 5; aList[x++] = "a" + x) ;
Array.Resize<string>(ref aList, x);
foreach (string a in aList)
{
Response.Write(a + "<br/>");
}
Response.Write("<hr/>");
/*------------------------------------------------------*/
List<string> bList = new List<string>();
x = 0;
for (; x < 5; bList.Add("b" + (++x))) ;
foreach (string b in bList)
{
Response.Write(b + "<br/>");
}


基本情况是,已知数据的上限(10),可能会少(5),数据上限不会太大,最大不过一两百,一般只有十几二十几左右而以。

数组的话,是声明上限大小的数组,赋值后根据真实大小Resize数组。
List<>自然不用管数据多少,直接Add即可。

这种情况下是选择数组还是选择List<>比较合适呢?请了解的人告诉一下,因为项目使用到这种列表的地方不少,细小的资源合起来也不是个小数。所以选择就比较谨慎一些。
...全文
173 点赞 收藏 15
写回复
15 条回复
DemonAngle 2008年08月19日
当然是list <> 啊
回复 点赞
wanghui0380 2008年08月19日
我选择list<>

因为我更看重健壮性,来回Resize容易发生意外。

而且Array.Resize内部实际是复制操作,so从你追求资源的角度说,他的开销也不小
回复 点赞
离子漂浮物 2008年08月19日
List<>在大多情况下会比数组好,只是想说是在象我这种情况下用数组好还是List<>好呢
回复 点赞
amandag 2008年08月19日
[Quote=引用 6 楼 Novelty 的回复:]
List <>比较好,避免频繁装箱和拆箱。
[/Quote]
回复 点赞
dc5858518 2008年08月19日
List <>比较好,避免频繁装箱和拆箱。
回复 点赞
萱哥老了 2008年08月19日
数组类型特定 ,有明确的数据类型,内部数据类型不可变。

list<T>,泛型 可使用多种类型 , 可以通过不同的Unit实现多重数据的存储,转换。

可以根据你自己的需要适当选用。
回复 点赞
wangping_li 2008年08月19日
List
回复 点赞
laodan 2008年08月19日
建议list<>,比较灵活
回复 点赞
lovehongyun 2008年08月19日
想灵活一些的话可以用list
回复 点赞
Novelty 2008年08月19日
List<>比较好,避免频繁装箱和拆箱。
回复 点赞
hy_lihuan 2008年08月19日
你这样的ArrayList就可以阿。如果只是两个选择,那就选择list <>好了
回复 点赞
bhtfg538 2008年08月19日
List<>
还有他指定强类型
回复 点赞
palm_java 2008年08月19日
list<>
回复 点赞
漂泊_DY 2008年08月19日
List <>我也感覺用這個比較好。
回复 点赞
wxg22526451 2008年08月18日
用List <>,可以添加各种类型,比较灵活
用数组还得设上限,适合固定的数据
回复 点赞
发动态
发帖子
.NET技术社区
创建于2007-09-28

4.9w+

社区成员

66.8w+

社区内容

.NET技术交流专区
社区公告
暂无公告