Dot-Net

最佳字元串容器:StringCollection、Collection<string>、List<string>、ArrayList、..?

  • March 21, 2009

什麼是最合適的容器,僅用於保存在具有未確定上邊界的某個數組中的字元串,該數組的長度在其創建時是未知的。

對於簡單的程式碼,例如:

var list = new SomeContainer(); // size is unknown
for()/foreach()/do()/while() // any loop
{
 list.Add(string);
}

它是StringCollection作為字元串的優化集合,還是只是Collection&lt;string&gt;or List&lt;string&gt;or ArrayList?他們之間有什麼不同?

對於您所需要的,List&lt;string&gt;可能是最通用的。StringCollection在 1.1 中很方便,當(沒有泛型)您需要特定的類用於類型化集合時。Collection&lt;string&gt;如果您想對其進行子類化以提供驗證等,這很方便。

無論哪種方式,在 3.5 中,LINQ 都會為它們提供許多額外的方法——但沒有 LINQ,List&lt;T&gt;會有更多的特性(Find、、Sort等)

引用自:https://stackoverflow.com/questions/669106