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

首頁 > 編程 > C# > 正文

C#中數組、ArrayList和List三者的區別詳解

2019-10-29 21:17:59
字體:
來源:轉載
供稿:網友

在C#中數組,ArrayList,List都能夠存儲一組對象,那么這三者到底有什么樣的區別呢。

數組

數組在C#中最早出現的。在內存中是連續存儲的,所以它的索引速度非???,而且賦值與修改元素也很簡單。

//數組 string[] s=new string[2]; //賦值 s[0]="a"; s[1]="b"; //修改 s[1]="a1"; 

 但是數組存在一些不足的地方。在數組的兩個數據間插入數據是很麻煩的,而且在聲明數組的時候必須指定數組的長度,數組的長度過長,會造成內存浪費,過段會造成數據溢出的錯誤。如果在聲明數組時我們不清楚數組的長度,就會變得很麻煩。

針對數組的這些缺點,C#中最先提供了ArrayList對象來克服這些缺點。

ArrayList

ArrayList是命名空間System.Collections下的一部分,在使用該類時必須進行引用,同時繼承了IList接口,提供了數據存儲和檢索。ArrayList對象的大小是按照其中存儲的數據來動態擴充與收縮的。所以,在聲明ArrayList對象時并不需要指定它的長度。

 //ArrayList ArrayList list1 = new ArrayList(); //新增數據 listAdd("cde"); listAdd(5678);  //修改數據 list[2] = 34;  //移除數據 listRemoveAt(0);  //插入數據 listInsert(0, "qwe"); 

 從上面例子看,ArrayList好像是解決了數組中所有的缺點,為什么又會有List?

我們從上面的例子看,在List中,我們不僅插入了字符串cde,而且插入了數字5678。這樣在ArrayList中插入不同類型的數據是允許的。因為ArrayList會把所有插入其中的數據當作為object類型來處理,在我們使用ArrayList處理數據時,很可能會報類型不匹配的錯誤,也就是ArrayList不是類型安全的。在存儲或檢索值類型時通常發生裝箱和取消裝箱操作,帶來很大的性能耗損。

裝箱與拆箱的概念:

簡單的說:

裝箱:就是將值類型的數據打包到引用類型的實例中

比如將string類型的值abc賦給object對象obj

String i=”abc”; object obj=(object)i; 

拆箱:就是從引用數據中提取值類型

比如將object對象obj的值賦給string類型的變量i

object obj=”abc”; string i=(string)obj; 

裝箱與拆箱的過程是很損耗性能的。

泛型List

因為ArrayList存在不安全類型與裝箱拆箱的缺點,所以出現了泛型的概念。List類是ArrayList類的泛型等效類,它的大部分用法都與ArrayList相似,因為List類也繼承了IList接口。最關鍵的區別在于,在聲明List集合時,我們同時需要為其聲明List集合內數據的對象類型。

比如:

List<string> list = new List<string>(); //新增數據 listAdd(“abc”); //修改數據 list[0] = “def”; //移除數據 listRemoveAt(0); 

上例中,如果我們往List集合中插入int數組123,IDE就會報錯,且不能通過編譯。這樣就避免了前面講的類型安全問題與裝箱拆箱的性能問題了。

總結:

數組的容量是固定的,您只能一次獲取或設置一個元素的值,而ArrayList或List<T>的容量可根據需要自動擴充、修改、刪除或插入數據。

數組可以具有多個維度,而 ArrayList或 List< T> 始終只具有一個維度。但是,您可以輕松創建數組列表或列表的列表。特定類型(Object 除外)的數組 的性能優于 ArrayList的性能。 這是因為 ArrayList的元素屬于 Object 類型;所以在存儲或檢索值類型時通常發生裝箱和取消裝箱操作。不過,在不需要重新分配時(即最初的容量十分接近列表的最大容量),List< T> 的性能與同類型的數組十分相近。

在決定使用 List<T> 還是使用ArrayList 類(兩者具有類似的功能)時,記住List<T> 類在大多數情況下執行得更好并且是類型安全的。如果對List< T> 類的類型T 使用引用類型,則兩個類的行為是完全相同的。但是,如果對類型T使用值類型,則需要考慮實現和裝箱問題。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人性生交大片免费观看嘿嘿视频| 欧美精品videossex88| 国产精品jizz在线观看麻豆| 丝袜美腿精品国产二区| 亚洲а∨天堂久久精品9966| 91精品国产综合久久男男| 欧美成人在线网站| 亚洲va国产va天堂va久久| 91av成人在线| 欧美日韩国产一区二区| 中文字幕精品久久久久| 欧美视频在线观看免费网址| 国产婷婷成人久久av免费高清| 成人午夜激情免费视频| 国内精品久久久久影院 日本资源| 九九久久综合网站| 福利二区91精品bt7086| 欧美日本在线视频中文字字幕| 国产精品成人av在线| 久久久精品美女| 亚洲黄在线观看| 日韩中文字幕免费视频| 91精品久久久久久综合乱菊| 精品视频久久久久久| 日本免费久久高清视频| 久久成人精品视频| 欧美福利视频在线| 久久精品视频一| 中文字幕成人精品久久不卡| 亚洲欧美日韩天堂一区二区| 亚洲男人天堂九九视频| 成人免费淫片aa视频免费| 久久精品人人爽| 国产亚洲视频在线观看| 97婷婷涩涩精品一区| 亚洲欧美一区二区三区四区| 色综合影院在线| 日韩激情av在线播放| 91美女福利视频高清| 亚洲欧洲成视频免费观看| 欧美日韩一区二区精品| 久久久久国产精品www| 国产97人人超碰caoprom| 日韩激情第一页| 国产乱肥老妇国产一区二| 国产精品尤物福利片在线观看| 欧美激情手机在线视频| 国产精品福利网站| 亚洲精品资源美女情侣酒店| 亚洲成色777777女色窝| 97不卡在线视频| 在线免费观看羞羞视频一区二区| 欧美精品18videos性欧| 国产精品久久久亚洲| 亚洲精品影视在线观看| 精品国产精品三级精品av网址| 黑人狂躁日本妞一区二区三区| 日本aⅴ大伊香蕉精品视频| 亚州欧美日韩中文视频| 精品国产精品三级精品av网址| 最近2019中文字幕第三页视频| 亚洲一区二区在线播放| 色婷婷成人综合| 欧美与欧洲交xxxx免费观看| 黑人巨大精品欧美一区二区一视频| 欧美成人精品一区二区| 国产精品成av人在线视午夜片| 欧美专区中文字幕| 国产激情综合五月久久| 欧美性猛交99久久久久99按摩| 久久久久久久久久av| 国产网站欧美日韩免费精品在线观看| 欧美天堂在线观看| 久久免费精品视频| 国产一区二区日韩精品欧美精品| 亚洲美女中文字幕| 亚洲伦理中文字幕| 一区二区在线免费视频| 美女久久久久久久久久久| 草民午夜欧美限制a级福利片| 欧洲成人在线视频| 91精品国产免费久久久久久| 亚洲精品第一国产综合精品| 欧美精品videofree1080p| 日韩国产欧美精品在线| 91wwwcom在线观看| 久久九九国产精品怡红院| 亚州国产精品久久久| 欧美成人精品h版在线观看| 国产精品美女视频网站| 一区二区三欧美| 国产欧美精品日韩| 超碰精品一区二区三区乱码| 亚洲人成网站999久久久综合| 亚洲一区二区精品| 亚洲精品永久免费精品| 91国语精品自产拍在线观看性色| 国产精品video| 国产精品久久一| 欧美激情一区二区三区在线视频观看| 欧美性xxxx18| 揄拍成人国产精品视频| 欧美在线观看视频| 国产丝袜精品第一页| 这里只有视频精品| 欧美视频中文在线看| 国产精品中文在线| 成人久久久久爱| 国产亚洲精品美女久久久| 亚洲午夜激情免费视频| 中文字幕综合一区| 国产成人在线一区| 91精品国产综合久久久久久蜜臀| 欧美成人高清视频| 亚洲成人激情小说| 国产成人精品在线观看| 亚洲精品在线不卡| 日韩av在线精品| 精品国产乱码久久久久酒店| 欧美日韩在线影院| 久久久久国产精品免费| 欧美成人一区在线| 国产精品小说在线| 亚洲精品国精品久久99热| 精品久久久久久亚洲国产300| 久久久久成人网| 亚洲第五色综合网| 亚洲欧洲av一区二区| 亚洲加勒比久久88色综合| 欧美视频中文在线看| 国产精品欧美亚洲777777| 欧美寡妇偷汉性猛交| 亚洲国产私拍精品国模在线观看| 狠狠色狠狠色综合日日五| 国产精品电影网| 九九久久精品一区| 欧美电影电视剧在线观看| 日韩精品中文字幕久久臀| 国产欧美日韩最新| 国产精品www色诱视频| 国产精品视频内| 国产有码在线一区二区视频| 日韩成人在线观看| 日韩毛片在线观看| 欧美日韩国产精品| 日日噜噜噜夜夜爽亚洲精品| 日韩av第一页| 久久精品欧美视频| 久久久久在线观看| 亚洲一区中文字幕在线观看| 亚洲天天在线日亚洲洲精| 亚洲欧美精品中文字幕在线| 欧美高清视频一区二区| 欧美国产日韩中文字幕在线| 国产精品99久久久久久久久久久久| 亚洲国产天堂久久综合| 国产精品成久久久久三级| 韩国视频理论视频久久| 欧美日韩成人精品| 欧美日韩一区二区三区| 国产日本欧美一区二区三区| 欧美电影在线免费观看网站| 国产精品视频最多的网站| 亚洲一级免费视频|