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

首頁 > 編程 > C# > 正文

C#入門教程之集合ArrayList用法詳解

2020-01-24 00:37:18
字體:
來源:轉載
供稿:網友

本文實例講述了C#入門教程之集合ArrayList用法。分享給大家供大家參考,具體如下:

.NET Framework提供了用于數據存儲和檢索的專用類,這些類統稱集合。這些類提供對堆棧、隊列、列表和哈希表的支持。大多數集合類實現系統的接口。下面我們主要來講一下ArrayList。

ArrayList是命名空間Systrm.Collections下的一部分,它是使用大小可按需動態增加的數組實現IList接口。

ArrayList的容量是ArrayList可以保存的元素數。ArrayList的默認初始容量為0.隨著元素添加到ArrayList中,容量會根據需要通過重新分配自動增加。使用證書索引可以訪問此集合中的元素。此集合中的索引從零開始。

下面我們先來看一個例子:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Collections;namespace 集合{  //動物類  public abstract class Animal  {    protected string name;   //動物的名字    public string Name    {      get { return name; }      set { name = value; }    }    public Animal()    {      name="The animal with no name";    }    public Animal(string newName)    {      name=newName;    }    public void Feed()   //繁殖后代    {      Console.WriteLine("{0} has been fed.",name);    }  }  //奶牛類  public class Cow : Animal  {    public Cow(string newName): base(newName)    { }    public void Milk()   //產牛奶    {      Console.WriteLine("{0} has been milked.", name);    }  }  //母雞類  public class Chicken : Animal  {    public Chicken(string newName):base(newName)    { }    public void LayEgg()  //下蛋    {      Console.WriteLine("{0} has laid an egg.", name);    }  }  class Program  {    static void Main(string[] args)    {      //用數組的方法實現      Console.WriteLine("Create an Array type collection of Animal object and use it:");      Animal[] animalArray = new Animal[2];      Cow myCow1 = new Cow("Deirdre");      animalArray[0] = myCow1;      animalArray[1] = new Chicken("Ken");      foreach (Animal myAnimal in animalArray )      {        Console.WriteLine("New {0} object added to Array collection,Name={1}", myAnimal.ToString(), myAnimal.Name);      }      Console.WriteLine("Array collection contains {0} objects.",animalArray .Length );      animalArray[0].Feed();      ((Chicken)animalArray[1]).LayEgg();      Console.WriteLine();      //用集合的方法實現      Console.WriteLine("Create an ArrayList type collection of Animal objects and use it;");      ArrayList animalArrayList = new ArrayList();      Cow myCow2 = new Cow("HayLey");      animalArrayList.Add(myCow2);      animalArrayList.Add(new Chicken("Roy"));      foreach (Animal myAnimal in animalArrayList)      {        Console.WriteLine("New {0} object added to ArrayList collection,Name={1}", myAnimal.ToString(), myAnimal.Name);      }      Console.WriteLine("ArrayList collection contains {0} objects.", animalArrayList.Count);      ((Animal)animalArrayList[0]).Feed();      ((Chicken)animalArrayList[1]).LayEgg();      Console.WriteLine();    }  }}

集合的創建

對于簡單的數組來說,只有用固定的大小來初始化數組,才能使用它。

Animal[] animalArray = new Aimal[2];

而ArrayList集合不需要初始化其大小

ArrayList animalArrayList = new ArrayList();

這個類還有另外兩個構造函數。第一個構造函數把現有的集合作為一個參數,把現有集合的內容復制到新實例中;而另一個構造函數通過一個參數設置集合的容量(capacity)。這個容量用一個int值指定,設置集合中可以包含的初始項數。但這并不是真實的容量,因為如果集合中的項數超過了這個值,容量就會自動增加一倍。

對于ArrayList集合,它沒有現成的項,也沒有null引用的項。我們使用ArrayList對象的Add()方法添加新項:

Cow myCow2 = new Cow("Hayley");anmialArrayList.Add(myCow2);anmialArrayList.Add(new Chicken("Roy"));

ArrayList對象支持IEnumerable接口,這個接口的唯一方法GetEnuumerator()可以迭代集合中的各項。所以可以與foreach一起使用

foreach (Animal myAnimal in animalArrayList){  Console.WriteLine("New {0} object added to ArrayList collection,Name = {1}",myAnimal.Tostring(),myAnimal.Name);}

ArrayList集合是System.Object對象的集合(通過多態性賦給Animal對象),所以必須用所有的項進行數據類型轉換:

((Animal)animalArrayList[0]).Feed();((Chichen)animalArrayList[1]).LayEgg();

我們可以使用Remove()和RemoveAt()方法刪除項,這兩個方法是在ArrayList類中實現的IList接口的一部分。它們分別根據項的引用或索引從集合中刪除項:

animalArrayList.RemoveAt(0);animalArrayList.Remove(myCow2);

ArrayList集合可以用AddRange()方法一次添加好幾個項。這個方法接受帶有ICollection接口的任何對象,包括數組:

animalArrayList.AddRange(animalArray);

AddRange()方法不是ArrayList提供的任何接口的一部分。這個方法專用于ArrayList類,

更多關于C#相關內容感興趣的讀者可查看本站專題:《C#字符串操作技巧總結》、《C#數組操作技巧總結》、《C#中XML文件操作技巧匯總》、《C#常見控件用法教程》、《WinForm控件用法總結》、《C#數據結構與算法教程》及《C#面向對象程序設計入門教程

希望本文所述對大家C#程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品一区av| 精品久久久久久久大神国产| 久久久久成人精品| 青青草原一区二区| 国产日韩在线观看av| 国产精品旅馆在线| 成人av在线网址| 日韩在线视频观看正片免费网站| 国a精品视频大全| 中文字幕精品网| 不卡av在线播放| 在线一区二区日韩| 国产欧美日韩中文| 久久久精品免费| 国产精品久久久久久久久久三级| 疯狂蹂躏欧美一区二区精品| 亚洲老头同性xxxxx| 午夜精品一区二区三区在线播放| 日本道色综合久久影院| 国产精品电影在线观看| 日韩av观看网址| 国内精品美女av在线播放| 国产精品一区二区女厕厕| 日韩av在线播放资源| 九九热在线精品视频| 国产高清视频一区三区| 亚洲综合精品一区二区| 亚洲精品影视在线观看| 一区二区三区视频观看| 国产精品久久精品| 久久久久久久久久久国产| 在线日韩精品视频| www.日韩欧美| 91精品久久久久久久久青青| 日韩av电影在线播放| 永久免费毛片在线播放不卡| 久久天天躁夜夜躁狠狠躁2022| 国产精品第一第二| 欧美午夜精品伦理| 成人精品一区二区三区| 国产精品久久久久久久久久久新郎| 亚洲欧美中文日韩v在线观看| 欧美最顶级的aⅴ艳星| 国产午夜精品全部视频在线播放| 亚洲第一免费播放区| 久久成年人视频| xvideos亚洲人网站| 久久久久久有精品国产| 亚洲人精品午夜在线观看| 成人国产精品一区二区| xxxxxxxxx欧美| 日韩成人高清在线| 中文字幕免费精品一区高清| 一本色道久久88综合亚洲精品ⅰ| 日韩一级裸体免费视频| 欧美尤物巨大精品爽| 91精品国产综合久久香蕉922| 欧美日韩中国免费专区在线看| 亚洲国产精品推荐| 欧美成人激情视频| 日韩小视频在线观看| 欧美激情视频一区二区三区不卡| 国产精品日日做人人爱| 亚洲图片在区色| 久久久欧美一区二区| 日韩欧美视频一区二区三区| 日韩毛片在线看| 亚洲人成电影网| 成人疯狂猛交xxx| 亚洲男人天堂2024| 久久久精品亚洲| 日本国产欧美一区二区三区| 欧洲中文字幕国产精品| 九九久久久久久久久激情| 日韩**中文字幕毛片| 久久精品国产亚洲精品| 欧美午夜片欧美片在线观看| 成人国产精品av| 欧美成人亚洲成人日韩成人| 久久影院中文字幕| 国产盗摄xxxx视频xxx69| 日韩中文字幕在线免费观看| 日韩av在线免费观看| 亚洲成人在线视频播放| 欧美成人激情图片网| 91在线|亚洲| 狠狠躁夜夜躁久久躁别揉| 97av在线播放| 国产成人精品电影| 国产成人综合av| 欧美在线激情视频| 深夜福利日韩在线看| 亚洲美女精品成人在线视频| 久久国产精品影视| 一本大道香蕉久在线播放29| 欧美性猛交xxxxx水多| 日韩av综合网| 国产精品欧美久久久| 欧美日韩国产一中文字不卡| 欧美做爰性生交视频| 日本精品视频在线观看| 欧美激情在线一区| 一本大道久久加勒比香蕉| 国产一级揄自揄精品视频| 国产精品吴梦梦| 精品国产91乱高清在线观看| 日韩免费看的电影电视剧大全| 国产亚洲欧洲高清一区| 欧美成人中文字幕在线| 在线观看日韩av| 韩国三级日本三级少妇99| 亚洲电影免费观看高清完整版| 欧美亚洲国产精品| 国产精品网红福利| 亚洲精品自拍第一页| 国产日本欧美视频| www.日韩不卡电影av| 日韩精品视频三区| 国产日韩精品一区二区| 亚洲人成电影在线观看天堂色| 91精品视频专区| 国产97色在线|日韩| 亚洲视频专区在线| 日日骚av一区| 精品视频一区在线视频| 亚洲自拍高清视频网站| 亚洲欧洲美洲在线综合| 成人黄色激情网| 亚洲国产高清福利视频| 亚洲网址你懂得| 国产男人精品视频| 亚洲一区第一页| 97av在线视频免费播放| 欧美黑人xxx| 日韩一区视频在线| 日av在线播放中文不卡| 久久久亚洲国产天美传媒修理工| 欧美日韩中文字幕| 成人免费观看网址| 亚洲午夜精品久久久久久性色| 亚洲经典中文字幕| 欧美与欧洲交xxxx免费观看| 久热在线中文字幕色999舞| 欧洲亚洲免费视频| 亚洲欧洲第一视频| 欧美激情奇米色| 久久99久久99精品免观看粉嫩| 亚洲精品福利资源站| 日韩欧美成人精品| www.亚洲免费视频| 亚洲999一在线观看www| 国产视频久久久久| 亚洲成人黄色在线| 欧美激情日韩图片| 日韩av三级在线观看| 日韩在线免费高清视频| 欧美中在线观看| 欧美激情一级欧美精品| 久久精品一区中文字幕| 国产精品流白浆视频| 红桃视频成人在线观看| 久久久久久久久亚洲| 不卡在线观看电视剧完整版| 亚洲成人精品在线|