數(shù)組的大小是固定的,如果元素個數(shù)是動態(tài)的,就應(yīng)使用集合類,集合可以根據(jù)集合類實現(xiàn)的接口組合為列表、集合和字典,集合實現(xiàn)的常用接口有如下

(1)IEnumerable<T>:如果將foreach語句用于集合,就需要IEnumerable接口,這個接口定義了方法GetEnumerator(),它返回了一個實現(xiàn)了IEnumerator接口的枚舉

(2)ICollection<T>:ICollection<T>接口由泛型集合類實現(xiàn),使用這個接口可以獲得集合中的元素個數(shù)(Count屬性),把集合復(fù)制到數(shù)組中的方法(CopyTo()),還可以從集合中增加刪除元素(Add(),Remove(),Clear())

(3)IList<T>:IList<T>接口用于可通過位置訪問其中的元素列表,這個接口定義了一個索引器,可以在集合中的指定位置插入或則刪除某些項(Insert()和RemoveAt()方法)。IList<T>派生至ICollection<T>接口

(4)ISet<T>:ISet<T>接口由集實現(xiàn),集允許合并不同的集,獲得兩個集的交集,檢查兩個集是否重疊。ISet<T>接口派生自ICollection<T>接口

(5)IDictionary<TKey,TValue>:IDictionary<TKey,TValue>接口由包含鍵和值泛型集合類實現(xiàn),使用這個接口可以訪問所有的鍵和值,使用鍵類型的索引器可以訪問某些項,還可以添加和刪除某些項

隊列是其元素以先進先出(FIFO)的方式來處理的集合。先放入隊列中的元素會先讀取,其實就是我們在編程中遇到處理訂單的處理流程,先來的先處理,但如果考慮到不同訂單的優(yōu)先級,我們會優(yōu)先處理優(yōu)先級高的訂單,先定義一個簡單訂單實體。

移動開發(fā)培訓(xùn),Android培訓(xùn),安卓培訓(xùn),手機開發(fā)培訓(xùn),手機維修培訓(xùn),手機軟件培訓(xùn)

 public class ProductOrder
    {        public string Name { get;private set; }        /// <summary>
        /// 用于標(biāo)識訂單的優(yōu)先級        /// </summary>
        public string Level { get; private set; }        public string Content { get; private set; }        public ProductOrder(string name, string level, string content)
        {            this.Name = name;