.net 貶型 list

來源:互聯網
上載者:User

我以前經常使用Lotus Domino平台及其LotusScript語言。這門語言中我最喜歡的一個特性是List對象;它會簡化使用相同對象的集合。後來我發現.NET架構2.0語言裡也有一個類似(甚至更加強大)的特性。

範型

.NET架構2.0引入了一個叫做範型(generics)的重要概念。雖然範型常常都是用C#語言來討論的,但是它事實上是.NET中繼語言(Intermediate Language,IL)裡的一個重要特性,所以它在所有的.NET語言裡都有。.NET是類別安全語言,所以編譯器會檢查變數分配是否合法,如果有問題它就會提示你。

型別安全特性在使用集合對象的.NET 1.1裡消失了,因為集合可以容納一切東西。在訪問單獨的集合元素時,你必須把它們歸為正確的類型——這就是範型的作用。使用範型的集合會保留集合的一般性質,但是在被執行個體化的時候,通過為集合定義物件類型,型別安全被加入。

System.Collections.Generic命名空間含有用來定義範型集合的介面和類,它可以讓你建立強型別集合。反過來,它們提供了比非範型強型別集合更好的類型和效能。我們將把注意力放到這樣一個集合上——List。

List類

你可以使用System.Collections.Generic.List類來表示一個可以通過索引來訪問的強型別對象的列表。這個類為搜尋、排序和操控列表的內容提供了方法。微軟的文檔將List類描述為與ArrayList類對應的範型。它包括下列方法:

  • Add允許向List的結尾添加對象。
  • AddRange將一個集合的內容添加到List的結尾。
  • BinarySearch使用二進位搜尋演算法在被排序的List裡或者其中的一部分裡尋找某個元素。
  • Clear清除List裡的內容(也就是說,刪除所有的東西)。
  • Contains確定List裡是否含有某個元素。
  • ConvertAll把所有的List元素轉換成為另外一種類型。
  • CopyTo把List裡的所有內容複寫到另外一個數組裡。
  • Exists確定List裡是否含有合格元素。
  • Find搜尋符合特定的條件的元素。
  • FindAll搜尋符合某些條件的所有元素。
  • FindIndex搜尋合格元素索引。
  • FindLast搜尋符合特定條件的元素最後一次出現的地方。
  • FindLastIndex搜尋符合特定條件的元素最後一次出現的地方,並返回其索引。
  • ForEach對每個List項目採取某個動作。
  • GetEnumerator返回一個在List裡迭代的計數器。
  • GetRange返回List裡元素的子集。
  • IndexOf返回符合某個值的元素的第一個索引。
  • LastIndexOf返回符合某個值的元素的最後一個索引。
  • Remove從List裡刪掉某個元素第一次的出現。
  • RemoveAll從List裡刪除合格所有元素。
  • RemoveAt用某個索引從List裡刪除元素。
  • RemoveRange從List裡刪除元素組。
  • Reverse顛倒List元素的順序。
  • Sort利用索引值給List元素排序。

這個列表雖然沒有列出所有的方法,但是它概要說明了List類提供的各種功能。此外,還有其他一些可用的屬性,包括計算(List中項目的數量)和容量(也就是在不需要調整大小的情況下List能夠容納的項目數量)。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.