亚洲精品亚洲人成在线观看麻豆,在线欧美视频一区,亚洲国产精品一区二区动图,色综合久久丁香婷婷

              當(dāng)前位置:首頁 > IT技術(shù) > Windows編程 > 正文

              C#:Arraylist
              2021-09-03 18:37:48

              ArrayList是.Net Framework提供的用于數(shù)據(jù)存儲和檢索的專用類,它是命名空間System.Collections下的一部分。它的大小是按照其中存儲的數(shù)據(jù)來動態(tài)擴(kuò)充與收縮的。所以,我們在聲明ArrayList對象時(shí)并不需要指定它的長度。

              優(yōu)點(diǎn)
              1、支持自動改變大小的功能
              2、可以靈活的插入元素
              3、可以靈活的刪除元素

              和list的區(qū)別(缺點(diǎn))

              在arraylist中,我們可以存放不同類型的數(shù)據(jù),可以是整型、字符串等,因?yàn)锳rrayList會把所有插入其中的數(shù)據(jù)都當(dāng)作為object類型來處理。這樣,在我們使用ArrayList中的數(shù)據(jù)來處理問題的時(shí)候,很可能會報(bào)類型不匹配的錯(cuò)誤,也就是說ArrayList不是類型安全的。既使我們保證在插入數(shù)據(jù)的時(shí)候都很小心,都有插入了同一類型的數(shù)據(jù),但在使用的時(shí)候,我們也需要將它們轉(zhuǎn)化為對應(yīng)的原類型來處理。這就存在了裝箱拆箱的操作,會帶來很大的性能損耗。

              下面舉一個(gè)簡單的例子供大家理解:

              ?
              ArrayList list = new ArrayList();
              
              //新增數(shù)據(jù)
              list.Add("ykc");
              list.Add(123);
              
              //修改數(shù)據(jù)
              list[2] = 345;
              
              //移除數(shù)據(jù)
              list.RemoveAt(0);
              
              //插入數(shù)據(jù)
              list.Insert(0, "hello world");
              
              //獲取元素值
              object value = al[index]; //al 為 ArrayList 對象,一般需要再對 value 進(jìn)行類型轉(zhuǎn)換,比如:int n = (int)value;
              //設(shè)置元素值
              al[index] = value; //al 為 ArrayList 對象,index 必須小于 Count
              //追加元素
              int ArrayList.Add(object value) //返回添加的元素的索引
              //插入元素
              void ArrayList.Insert(int index, object value)
              //刪除元素
              //刪除元素后,后面的元素會前移,但 Capacity 不會變化。
              void ArrayList.Remove(object obj) //從前(索引 0)往后查找,刪除找到的第一個(gè)和 obj 相同的元素
              void ArrayList.RemoveAt(int index) //刪除索引 index 對應(yīng)的元素
              void ArrayList.RemoveRange(int index, int count) //從索引 index 開始,刪除 count 個(gè)元素
              //查找元素
              int ArrayList.IndexOf(object value) //從前(索引 0)往后查找,返回找到的第一個(gè)和 obj 相同的元素的索引
              int ArrayList.IndexOf(object value, int startIndex)
              int ArrayList.IndexOf(object value, int startIndex, int count)
              int ArrayList.LastIndexOf(object value) //從后往前(索引 0)查找,返回找到的第一個(gè)和 obj 相同的元素的索引
              int ArrayList.LastIndexOf(object value, int startIndex)
              int ArrayList.LastIndexOf(object value, int startIndex, int count)
              
              ?

              ?

              本文摘自 :https://blog.51cto.com/u

              開通會員,享受整站包年服務(wù)立即開通 >