日期:2014-05-17  浏览次数:20508 次

请问C#该多用数组还是list?
请教:是用数组好呢还是用list<T>好呢?

从方便性上说感觉list要方便很多,但不知效率如何,如果我有10个int型数据要传给函数,该用哪种呢?int[] or list<int>

是不是可以将所有int[],string[] 之类的数组全部用list<int>,list<string>代替?



------解决方案--------------------
全代替肯定是不必要的,方便的情况下代替
------解决方案--------------------
感觉list用起来比数组方便。但是貌似数组的效率比list要来的高一点点。。。看情况了
------解决方案--------------------
不知道你测试过没有,如果将一个产品中所有数组转换为List<T>或者相反,你的公司一年能多赚10万块钱吗?一套软件能够因为这种转换了就价值升高100块钱吗?

如果不是,就不要纠缠什么“效率如何”。这正的价值是靠逻辑、应用和扩展方面的考虑。
------解决方案--------------------
话是这样说的:不要跟我讲这么高深的理论,请问这高深的理论能给客户省几毛钱

------解决方案--------------------
如果初始化时确定大小,那么就使用Array
如果初始化时不确定大小,那么就使用List

------解决方案--------------------
看你的需求决定喽
------解决方案--------------------
貌似没人测试过。。。。。。。。
------解决方案--------------------
我记得以前有人测试过list<>和数组的速度,数组只比list<>快一点点,影响不大
------解决方案--------------------
其实我个人的观点是,整个软件这部分的低下效率可以用其它部分的高效率代替,在我们设计开发软件的时候,应该注意整体的效率,客户的需求。赚客户的钱吗,实时适应客户的需求,敏捷开发。
------解决方案--------------------
List<T> 的内部还是用 T[] 数组保存的,功能比 T[] 强大,但是会牺牲相应的性能。