鍍金池/ 教程/ C#/ 集合
循環(huán)
正則表達(dá)式
概述
委托
多態(tài)性
字符串
繼承
結(jié)構(gòu)體
集合
變量
不安全代碼
判斷
反射
異常處理
可空類(lèi)型
類(lèi)
方法
數(shù)據(jù)類(lèi)型
命名空間
文件 I/O
類(lèi)型轉(zhuǎn)換
屬性
程序結(jié)構(gòu)
事件
接口
預(yù)處理指令
運(yùn)算符
多線(xiàn)程
匿名方法
索引器
泛型
封裝
常量和文字
基本語(yǔ)法
特性
數(shù)組
環(huán)境配置
運(yùn)算符重載
枚舉

集合

集合類(lèi)專(zhuān)門(mén)用于數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)檢索,并提供堆棧、隊(duì)列、列表和哈希表的支持。目前,大多數(shù)集合類(lèi)都實(shí)現(xiàn)了相同的接口。

集合類(lèi)服務(wù)于不同的目的,如為元素動(dòng)態(tài)分配內(nèi)存,基于索引訪(fǎng)問(wèn)列表項(xiàng)等等,這些類(lèi)所創(chuàng)建的是 Object 類(lèi)的對(duì)象的集合。在 C# 中,Object 類(lèi)是所有數(shù)據(jù)類(lèi)型的基類(lèi)。

各種集合類(lèi)及其用法

下表為一些常用的以 System.Collection 為命名空間的集合類(lèi),點(diǎn)擊相應(yīng)鏈接,可查看詳細(xì)說(shuō)明。

類(lèi) 描述及用法
動(dòng)態(tài)數(shù)組 動(dòng)態(tài)數(shù)組表示可被單獨(dú)索引的對(duì)象的有序集合。
動(dòng)態(tài)數(shù)組基本上可以替代數(shù)組,但與數(shù)組不同的是,通過(guò)索引,動(dòng)態(tài)數(shù)組可以在指定的位置添加和移除項(xiàng)目,且會(huì)自動(dòng)重新調(diào)整大小,同樣允許在列表中進(jìn)行動(dòng)態(tài)內(nèi)存分配、增加、搜索、排序各項(xiàng)。
哈希表 哈希表使用來(lái)訪(fǎng)問(wèn)集合中的元素。
當(dāng)需要通過(guò)鍵訪(fǎng)問(wèn)元素時(shí),則使用哈希表,且一個(gè)有用的鍵值可以很方便地被識(shí)別。哈希表中的每一項(xiàng)都有一個(gè)鍵/值對(duì)。鍵用于訪(fǎng)問(wèn)集合中的項(xiàng)目。
排序列表 排序列表使用索引來(lái)訪(fǎng)問(wèn)列表中的項(xiàng)。
它是數(shù)組和哈希表的組合,包含一個(gè)可使用鍵或索引訪(fǎng)問(wèn)各項(xiàng)的列表。若使用索引來(lái)訪(fǎng)問(wèn)各項(xiàng),則它為一個(gè)動(dòng)態(tài)數(shù)組,若使用鍵來(lái)訪(fǎng)問(wèn)各項(xiàng),則它為一個(gè)哈希表。集合中的各項(xiàng)總是按鍵值排序。
堆棧 堆棧表示的是一個(gè)后進(jìn)先出的對(duì)象集合。
當(dāng)需要對(duì)各項(xiàng)進(jìn)行后進(jìn)先出的訪(fǎng)問(wèn)時(shí),則使用堆棧。在列表中添加一項(xiàng),稱(chēng)為推入元素;從列表中移除一項(xiàng)時(shí),稱(chēng)為彈出元素。
隊(duì)列 隊(duì)列表示的是一個(gè)先進(jìn)先出的對(duì)象集合。
當(dāng)需要對(duì)各項(xiàng)進(jìn)行先進(jìn)先出的訪(fǎng)問(wèn)時(shí),則使用隊(duì)列。在列表中添加一項(xiàng),稱(chēng)為入隊(duì);從列表中移除一項(xiàng),稱(chēng)為出隊(duì)。
點(diǎn)陣列 點(diǎn)陣列表示的是一個(gè)使用值 1 和 0 來(lái)表示的二進(jìn)制數(shù)組
當(dāng)需要存儲(chǔ)位,但事先不知道位數(shù)時(shí),則使用點(diǎn)陣列。通過(guò)整型索引,可以從點(diǎn)陣列集合中訪(fǎng)問(wèn)各項(xiàng),該索引值從零開(kāi)始。
上一篇:結(jié)構(gòu)體下一篇:概述