亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

C#中的ICollection接口

2019-11-17 02:56:13
字體:
來源:轉載
供稿:網友
C#中的ICollection接口

一、集合類:

1.1 ICollection接口

  前面我們學習了數組,這是.net Framework定義的最基本的集合類型,除過數組外,.net Framework還另外定義了很多集合類型以滿足編程的需要。

常見的集合有:

  • 向量;
  • 鏈表;
  • 雙端隊列;
  • 棧;
  • 樹;
  • Hash表;
  • Hash映射。

  所有的這些集合類型,在.net Framework中都必須實現一個重要的接口:ICollection接口。ICollection接口為實現它的類定義了兩個主要規范:

  • 集合元素數量(表現為Count屬性);
  • 訪問集合的迭代子(表現為GetEnumerator方法)。

  其中,GetEnumerator方法是由ICollection的父接口IEnumerable接口繼承得來的。

  ICollection接口定義了一個存儲和獲取object類型對象引用的集合,所以可以存儲和獲取各種引用類型對象的引用或值類型對象。

1.2IEnumerable接口

  IEnumerable接口是ICollection的父接口,凡實現此接口的類,都具備“可迭代”的能力。

  IEnumerable接口只定義了一個方法:GetEnumerator,該方法將返回一個“迭代子”對象(或稱為迭代器對象),是一個實現了IEnumerator接口的對象實例。

圖1 ICollection繼承層次

二、迭代子

  迭代子在C++中也稱為迭代器,是設計模式中的迭代模式,其存在的意義為:每一種集合都具備不同的存儲形式,例如向量使用數組來存儲,鏈表使用對象和對象間的引用來存儲,表采用多維數組或十字引用來保存數據,樹通過對象和對象間的多個引用來建立關系,圖采用樹或表來保存其關系……可見不同的集合類存儲數據的方式是多樣化的。存儲的多樣性必然導致訪問的多樣性,集合最常用的訪問是“遍歷”,即從集合的頭部訪問到集合的尾部,我們需要想辦法使用一種統一的方式遍歷訪問不同形式的集合。這就是迭代方式產生的基本原因。

  迭代模式將集合類看做一個容量無限的容器,并且容器的存放規則是線性的,即容器里的每一個元素都必須具有一個直接前趨(除過第一個元素)和一個直接后繼(除過最后一個元素)。容器中具備一個標志,可以指向容器中的任意一個存儲單位。

  迭代分為兩種:單向只向前迭代和雙向迭代。

2.1 單向只向前迭代模式

  對于單向只向前迭代模式,集合的單元標志只能從集合的某個元素起始逐一向后移動,所以最基本的迭代模式定義了三種操作:

  • 訪問標志所在項;
  • 標志前進到下一項并判斷是否到達集合末尾;
  • 重新回到初始項。

圖2 單向只向前迭代

2.2 雙向迭代模式

  對于雙向迭代模式,集合的單元標志即從集合的某個元素起逐一向后移動,也可以從集合的某一個元素起逐一向前移動,所以該類型迭代器定義了四種操作:

  • 訪問標志所在當前項;
  • 標志前進到下一項并判斷標志是否到達集合末尾;
  • 標志回到前一項并判斷標志是否到達集合起始;
  • 回到初始項。

圖3 雙向迭代

  .net Framework使用IEnumerator接口定義了一個單向只向前迭代規范。

  ICollection接口繼承了IEnumerable接口,該接口定義的GetEnumerator方法可以獲取到一個當前集合類對象的迭代子對象,即一個實現了IEnumerator接口的對象。

  凡是實現了IEnumerable接口的類,都可以使用foreach循環迭代遍歷。

  IEnumerator接口定義了一個可以遍歷object類型對象引用的迭代子,IEnumerable接口定義了獲取這種迭代子對象的方法。

三、泛型集合

3.1 ICollection<T>接口

  ICollection<T>接口定義了泛型集合接口,所謂泛型集合,即使用了.net Framework提供的泛型特性,使集合限定為只存儲一種特定類型對象引用或值類型的數據的集合。泛型集合增強了集合訪問的效率和安全性。

  由于存儲類型已被確定,所以ICollection<T>比ICollection接口提供了更多的方法,包括添加到集合,從集合刪除以及判斷一個對象引用(或對象值)是否在集合中存在。

3.2 IEnumerable<T>接口

  ICollection<T>接口實現了IEnumerable<T>接口,主要用來返回一個實現了實現了IEnumerator<T>接口的,確定類型的迭代子對象。

  參考ICollection<T>的繼承關系圖。

圖4 ICollection<T>接口繼承關系圖

  熟悉上述的系列接口,這是我們后面學習各種集合類對象的基礎。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产一区欧美二区三区| 欧美裸体xxxx极品少妇| 狠狠做深爱婷婷久久综合一区| 日韩精品中文在线观看| 亚洲欧美中文日韩v在线观看| 色婷婷av一区二区三区在线观看| 国语自产精品视频在线看一大j8| 国产va免费精品高清在线| 亚洲成人在线视频播放| 午夜精品久久久久久99热软件| 国产精品久久久久久久久久久久| 欧美高清视频免费观看| 这里只有精品在线观看| www.亚洲人.com| 欧美日韩午夜视频在线观看| 精品美女永久免费视频| 国产精品扒开腿做爽爽爽男男| 另类天堂视频在线观看| 欧美激情精品久久久| 亚洲a中文字幕| 欧美成人午夜激情在线| 欧美最顶级丰满的aⅴ艳星| 亚洲奶大毛多的老太婆| 一区二区三区动漫| 久久中文字幕国产| 精品视频在线观看日韩| 一本大道香蕉久在线播放29| 欧美性极品xxxx娇小| 欧美日韩国产精品一区二区三区四区| 久热在线中文字幕色999舞| 欧美精品免费看| 亚洲成人激情在线| 欧美最近摘花xxxx摘花| 久久精品国产亚洲一区二区| 亚洲国产欧美日韩精品| 亚洲激情中文字幕| 色天天综合狠狠色| 情事1991在线| 亚洲国产精品久久久| 97久久超碰福利国产精品…| 97涩涩爰在线观看亚洲| 亚洲第一页在线| 亚洲视频在线观看| 一本色道久久综合狠狠躁篇怎么玩| 国产精品国产福利国产秒拍| 亚洲精品国偷自产在线99热| 久久的精品视频| 欧美日韩亚洲一区二区三区| 国产精品视频自拍| 高清欧美电影在线| 欧美丝袜一区二区| 青青久久aⅴ北条麻妃| 久久久精品日本| 亚洲www永久成人夜色| 亚洲精品久久久久久久久久久久久| 欧美国产在线电影| 国内免费精品永久在线视频| 北条麻妃一区二区三区中文字幕| 国产精品私拍pans大尺度在线| 精品一区二区三区四区| 国内精品中文字幕| 久久五月天色综合| 久久久久国产视频| 日韩精品在线免费观看视频| 丝袜亚洲欧美日韩综合| 久久国产精品99国产精| 国产69久久精品成人看| 亚洲欧美日韩一区在线| 欧美激情视频一区二区| 精品久久久久人成| 日韩电影第一页| 伊人久久久久久久久久久| 日韩av影视在线| 欲色天天网综合久久| 欧美性猛交xxxx乱大交蜜桃| 欧美香蕉大胸在线视频观看| 成人免费看黄网站| 国产视频在线观看一区二区| 久久天堂电影网| 成人免费xxxxx在线观看| 色综合色综合久久综合频道88| 国产精品∨欧美精品v日韩精品| 久久精品电影网| 亚洲最大av网| 97视频在线观看亚洲| 成人欧美在线视频| 久久久久久久久久久网站| 亚洲精品av在线播放| 亚洲第一国产精品| 欧美日韩激情视频8区| 国产精品视频公开费视频| 精品久久久久久亚洲国产300| 日韩在线观看免费网站| 欧美人与性动交a欧美精品| 欧美www在线| 国产福利视频一区| 国产成人综合精品在线| 欧美一级视频一区二区| 成人免费大片黄在线播放| 国产成人精品免费视频| 日韩av在线一区二区| 精品国产精品三级精品av网址| 欧美丝袜一区二区三区| 亚洲欧美中文日韩v在线观看| 色先锋资源久久综合5566| 日本中文字幕不卡免费| 亚洲成人精品久久| 国产欧美精品日韩精品| 日韩欧美国产网站| 性夜试看影院91社区| 97超级碰碰碰久久久| 91精品国产91久久久久福利| 精品高清美女精品国产区| 久久久久国产一区二区三区| 国产+人+亚洲| 4438全国亚洲精品在线观看视频| 欧美综合第一页| 欧美激情伊人电影| 精品国产一区二区三区久久久狼| 国产精品视频中文字幕91| 亚洲网站视频福利| 欧美日韩国产页| 国外成人在线直播| 国产精品av免费在线观看| 亚洲男人天堂2023| 国产丝袜一区二区三区免费视频| 日本不卡免费高清视频| 中文字幕一精品亚洲无线一区| 91精品国产91久久久久久吃药| 久久久av电影| 日本不卡免费高清视频| 国产欧美日韩视频| 高清欧美一区二区三区| 国产一区二区激情| 国产欧美一区二区三区在线| 欧美性猛交xxxx乱大交蜜桃| 亚洲精品日韩丝袜精品| 视频在线观看99| 精品亚洲精品福利线在观看| 精品免费在线视频| 九九精品在线播放| 一本一本久久a久久精品综合小说| 国产精品久久久久久亚洲调教| 美女999久久久精品视频| 最近2019中文免费高清视频观看www99| 欧美在线视频一二三| 国产精品老女人精品视频| 国内精品400部情侣激情| 久久久av亚洲男天堂| 精品久久中文字幕| 亚洲精品www| 国产精品色悠悠| 欧美激情女人20p| 欧美丰满老妇厨房牲生活| 久久久久久久久爱| 国产视频观看一区| 欧美日韩激情网| 91精品久久久久久久| 国产精品偷伦视频免费观看国产| 久久久欧美精品| 国产丝袜一区二区三区| 久久青草精品视频免费观看| 免费不卡在线观看av| 久久久成人精品|