LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C#基礎(chǔ)之?dāng)?shù)據(jù)結(jié)構(gòu)

admin
2024年3月26日 18:56 本文熱度 1231
數(shù)據(jù)結(jié)構(gòu)是計(jì)算機(jī)存儲(chǔ)、組織數(shù)據(jù)的方式。是指相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合,即帶“結(jié)構(gòu)”的數(shù)據(jù)元素的集合。“結(jié)構(gòu)”就是指數(shù)據(jù)元素之間存在的關(guān)系,分為邏輯結(jié)構(gòu)存儲(chǔ)結(jié)構(gòu)

邏輯結(jié)構(gòu)指數(shù)據(jù)元素之間的前后關(guān)系。包括集合(同屬一個(gè)集合)、線性結(jié)構(gòu)(一對(duì)一的相互關(guān)系)、樹(shù)形結(jié)構(gòu)(一對(duì)多的相互關(guān)系、圖形結(jié)構(gòu)(多對(duì)多的相互關(guān)系

存儲(chǔ)結(jié)構(gòu):數(shù)據(jù)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式。常用的存儲(chǔ)結(jié)構(gòu)有順序存儲(chǔ)、鏈?zhǔn)酱鎯?chǔ)、索引存儲(chǔ)和哈希存儲(chǔ)等。

本章介紹C#常用的數(shù)據(jù)結(jié)構(gòu)類型,我們一起來(lái)學(xué)習(xí)。

字符串

字符串是值為文本的 String 類型對(duì)象。文本在內(nèi)部存儲(chǔ)為 Char 對(duì)象的依序只讀集合。String是引用型,且使用頻率非常高的引用類型。

字符串的一些示例:

// 聲明字符串變量并賦值string content = "C#語(yǔ)言基礎(chǔ)";// 聲明字符串變量并賦值為null,若訪問(wèn)則會(huì)導(dǎo)致異常string nullContent = null;
//聲明字符串變量并賦值為空字符串,長(zhǎng)度為零string emptyContent = string.Empty;//聲明字符串變量并賦值為空字符串,長(zhǎng)度為零string emptContent = "";

屬性與常用方法


數(shù)組

數(shù)組是將同一類型的多個(gè)變量存儲(chǔ)在一個(gè)數(shù)組數(shù)據(jù)結(jié)構(gòu)中。通過(guò)指定的索引來(lái)訪問(wèn)數(shù)組的元素。數(shù)組從零開(kāi)始建立索引,即數(shù)組索引從零開(kāi)始。數(shù)組包括一維數(shù)組、多維數(shù)組和交錯(cuò)數(shù)組。
數(shù)組具有以下屬性:
1、聲明數(shù)組變量時(shí)設(shè)置維度數(shù)。
2、交錯(cuò)數(shù)組是數(shù)組數(shù)組,每個(gè)成員數(shù)組的默認(rèn)值為null。
3、數(shù)組從零開(kāi)始編制索引,包含 n 元素的數(shù)組從 0 索引到 n-1。
4、數(shù)組元素可以是任何類型,其中包括數(shù)組類型。
5、數(shù)組類型是從抽象的基類型 Array 派生的引用類型。

數(shù)組的一些示例:
// 聲明一個(gè)由5個(gè)整數(shù)組成的一維數(shù)組int[] singleArray = new int[5];
// 聲明和設(shè)置數(shù)組元素值int[] setSingleArray = [1, 2, 3, 4, 5, 6];
// 聲明一個(gè)二維數(shù)組int[,] multiDimensionalArray = new int[2, 3];
// 聲明和設(shè)置二維數(shù)組元素值int[,] setMultiDimensionalArray2 = { { 1, 2, 3 }, { 4, 5, 6 } };
// 聲明一個(gè)交錯(cuò)數(shù)組int[][] jaggedArray = new int[6][];// 設(shè)置交錯(cuò)數(shù)組結(jié)構(gòu)中第一個(gè)數(shù)組的值。jaggedArray[0] = [1, 2, 3, 4];// 訪問(wèn)元素for (int i = 0; i < setSingleArray.Length; i++){    Console.WriteLine(list[i]);}

一維數(shù)組:是一系列相似元素。可以通過(guò)其索引訪問(wèn)元素。索引是序列中的順序位置,數(shù)組中的第一個(gè)元素位于索引0。

多維數(shù)組:具有多個(gè)維度。對(duì)于多維數(shù)組,遍歷元素的方式為:首先遞增最右邊維度的索引,然后是它左邊的一個(gè)維度,以此類推,向最左的索引遍歷元素。

交錯(cuò)數(shù)組:是一個(gè)數(shù)組,其元素是數(shù)組,大小可能不同。交錯(cuò)數(shù)組有時(shí)稱為“數(shù)組的數(shù)組”。


集合

集合與數(shù)組比較類似,都用于存放一組值,但集合中提供了特定的方法能直接操作集合中的數(shù)據(jù),并提供了不同的集合類來(lái)實(shí)現(xiàn)特定的功能。集合可以動(dòng)態(tài)的對(duì)集合的長(zhǎng)度進(jìn)行定義和維護(hù)。所有集合類或與集合相關(guān)的接口命名空間都是 System.Collection。
可索引集合:是一個(gè)可以使用其索引訪問(wèn)每個(gè)元素的集合。索引是序列中在它之前的元素?cái)?shù)。
示例:
// 聲明一個(gè)集合
List<string> fruits = ["apple", "pear", "peach", "strawberry"];
// 循環(huán)訪問(wèn)每個(gè)元素
foreach (var fruit in fruits){
    Console.Write(fruit + " ");
}

鍵值對(duì)集合: 使用字典集合,可通過(guò)使用每個(gè)元素的鍵訪問(wèn)集合中的元素。每次對(duì)字典的添加都包含一個(gè)值和與其關(guān)聯(lián)的鍵。
示例:
// 聲明一個(gè)字典集合變量
Dictionary<string, string> elements = new Dictionary<string, string>();
elements.Add("A", "90");
elements.Add("B", "80");
elements.Add("C", "70");
// 循環(huán)訪問(wèn)每個(gè)鍵值
foreach (string element in elements.Keys){
    Console.WriteLine("key: " + element);
    Console.WriteLine("values: " + elements[element]);
}

泛型

泛型是為所存儲(chǔ)或使用的一個(gè)或多個(gè)類型具有占位符(類型形參)的類、結(jié)構(gòu)、接口和方法。泛型集合類可以將類型形參用作其存儲(chǔ)的對(duì)象類型的占位符;類型形參呈現(xiàn)為其字段的類型和其方法的參數(shù)類型。泛型方法可將其類型形參用作其返回值的類型或用作其形參之一的類型。 

// 定義泛型類public class GenClass<T>{   // 定義泛型屬性    public T Genname { get; set; }}

public class A{    // 定義泛型方法    public T Go<T>(T arg)    {        T temp = arg;        // 返回        return temp;    }}
// 調(diào)用GenClass<string> gString = new GenClass<string>();gString.Genname = "A string";
GenClass<int> gInt = new GenClass<int>();gInt.Genname = 12;


術(shù)語(yǔ)

1、泛型類型定義是用作模板的類、結(jié)構(gòu)或接口聲明,帶有可包含或使用的類型的占位符。

2、泛型類型參數(shù)或類型參數(shù))是泛型類型或方法定義中的占位符。

3、構(gòu)造泛型類型(或 構(gòu)造類型是為泛型類型定義的泛型類型形參指定類型的結(jié)果。

4、泛型類型實(shí)參是被泛型類型形參所替代的任何類型。

優(yōu)點(diǎn)

1、類型安全,泛型將類型安全的負(fù)擔(dān)從你那里轉(zhuǎn)移到編譯器。

2、性能更好,無(wú)需對(duì)值類型進(jìn)行裝箱。

3、簡(jiǎn)化動(dòng)態(tài)生成代碼。

4、代碼更少且可以更輕松地重用代碼

缺點(diǎn)

1、不支持上下文綁定的泛型類型。

2、枚舉不能具有泛型類型形參。

3、輕量動(dòng)態(tài)方法不能是泛型。

***后續(xù)將對(duì)泛型詳解介紹***


小結(jié)

 以上對(duì)C#常用的字符串、數(shù)組、集合、泛型數(shù)據(jù)結(jié)構(gòu)類型進(jìn)行了介紹,希望對(duì)大家的學(xué)習(xí)C#基礎(chǔ)知識(shí)有一定的參考借鑒價(jià)值。


該文章在 2024/3/26 18:56:09 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
日韩欧美三级中文字幕在线 | 亚洲日本精品国产第一区二区 | 色综合久久综合香蕉色老大 | 香蕉在线手观看视频 | 中出仑乱中文字幕在线 | 在线观看AV网站永久免费观看 |