什么是最合适的容器,只适用于具有非预定上边界的某些数组中的字符串,其长度在创建时未知.
对于简单的代码,如:
var list = new SomeContainer(); // size is unknown for()/foreach()/do()/while() // any loop { list.Add(string); }
它是StringCollection
为优化集合字符串,或者只是Collection
或List
或ArrayList
?他们之间有什么不同?
根据您的需要,List
可能是最通用的.StringCollection
在1.1中很方便,当(没有泛型)你需要特定的类型集合类.Collection
如果你想将它子类化以提供验证等,这是很方便的.
无论哪种方式,在3.5,LINQ将提供大量的为他们额外的方法-但没有LINQ,List
具有更多的功能(Find
,Sort
,等)
A List
将是最有效的.
该Collection
级仅仅是另一种类型的列表的包装,参数的构造函数初始化的Collection
一个List
.
An ArrayList
基本上与a相同List
,因此您必须String
在阅读时将项目转换为.
A StringCollection
只是一个类型安全的包装ArrayList
.