2011-11-29 61 views
6

從類似的標題看,這些可能在C#中不可用。因爲他們非常基本和有用,他們必須在那裏,但可能被稱爲別的東西。C#容器 - 矢量。列表,隊列,堆棧等

如果它們可用,它們是否支持排序/搜索/插入/刪除/唯一等 - 通常的算法?

回答

9

您正在尋找System.Collections.Generic中的類以及LINQ to Objects。

2

它們是可用的,更重要的是它們支持Linq的AWESOMENESS。這可以讓你做很多很酷的事情,而不僅僅是你在C++ std庫中找到的基本算法。

0

在.NET 4.0中,你有

System.Collections.Generic.Stack<T> 
System.Collections.Generic.Queue<T> 

等等。

對於這些集合類的常見操作,請將Using System.Linq;添加到您的C#代碼中。

+0

泛型集合自框架2.0開始就可用。您不需要LINQ來處理集合類的常見操作。如果你想在它們上使用LINQ或LINQ擴展方法,你只需要這樣做。 – Guffa

3

這些名字大部分都是你猜對的。

從MSDN:

System.Collections.Generic namespace

因爲他們a我們將執行IEnumerable generic interface,您可以使用Enumerable class的擴展方法,包括OrderBy/OrderByDescending(「sort」)和Distinct(「unique」)。這三個類中的每一個都提供了自己的特定方法來添加和刪除集合中的元素。