日韩欧美国产精品免费一二-日韩欧美国产精品亚洲二区-日韩欧美国产精品专区-日韩欧美国产另-日韩欧美国产免费看-日韩欧美国产免费看清风阁

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

C#.NET現(xiàn)代化:集合表達(dá)式

admin
2025年5月3日 15:12 本文熱度 287

一、集合初始化器的基礎(chǔ)使用

在C#中,集合初始化器允許我們?cè)趧?chuàng)建集合對(duì)象時(shí),同時(shí)對(duì)其進(jìn)行初始化填充元素。例如,對(duì)于List<T>類型,傳統(tǒng)創(chuàng)建并添加元素的方式是:

List<int> numbers = new List<int>();
numbers.Add(1);
numbers.Add(2);
numbers.Add(3);

而使用集合初始化器可以更簡潔地完成相同操作:

List<int> numbers = new List<int> { 123 };

同樣,對(duì)于字典類型Dictionary<TKey, TValue>,也能通過集合初始化器快速填充數(shù)據(jù):

Dictionary<stringint> scores = new Dictionary<stringint>
{
    { "Alice"90 },
    { "Bob"85 },
    { "Charlie"95 }
};

這種方式讓代碼更加緊湊直觀,在初始化集合時(shí)一目了然地看到元素內(nèi)容。

二、集合表達(dá)式的進(jìn)階特性

1. 目標(biāo)類型推斷

從C# 9.0開始,在使用集合初始化器時(shí),當(dāng)右側(cè)的集合初始化表達(dá)式能夠明確推斷出類型時(shí),new關(guān)鍵字后的類型參數(shù)可以省略。比如:

var numbers = [123]; // 推斷為List<int>
var scores = new() { { "Alice"90 }, { "Bob"85 }, { "Charlie"95 } }; // 推斷為Dictionary<string, int>

這里的var根據(jù)初始化內(nèi)容自動(dòng)推斷出集合的具體類型,進(jìn)一步簡化了代碼書寫。

2. 范圍初始化

C# 10引入了范圍初始化語法,能夠更方便地初始化連續(xù)的元素序列。例如,創(chuàng)建一個(gè)包含從1到10的整數(shù)列表:

var rangeNumbers = Enumerable.Range(110).ToList();
// 新的范圍初始化方式
var newRangeNumbers = [1..11];

[1..11]表示從1開始(包含)到11結(jié)束(不包含)的元素序列,直接初始化為集合,減少了對(duì)Enumerable.Range方法的依賴,使代碼更簡潔。

3. 嵌套集合初始化

對(duì)于包含集合類型元素的集合,也可以通過嵌套集合初始化的方式快速構(gòu)建。例如,創(chuàng)建一個(gè)二維整數(shù)列表:

var twoDList = new List<List<int>>
{
    new List<int> { 123 },
    new List<int> { 456 },
    new List<int> { 789 }
};

這種方式對(duì)于構(gòu)建復(fù)雜的數(shù)據(jù)結(jié)構(gòu)十分高效,并且層次清晰。

三、集合表達(dá)式在實(shí)際項(xiàng)目中的應(yīng)用場(chǎng)景

1. 配置數(shù)據(jù)初始化

在項(xiàng)目的配置文件讀取和處理中,常常需要初始化集合類型的配置數(shù)據(jù)。比如,讀取一個(gè)包含多個(gè)數(shù)據(jù)庫連接字符串的配置項(xiàng):

var connectionStrings = new List<string>
{
    "Data Source=Server1;Initial Catalog=DB1;User ID=user1;Password=pass1",
    "Data Source=Server2;Initial Catalog=DB2;User ID=user2;Password=pass2"
};

使用集合表達(dá)式可以快速將配置數(shù)據(jù)初始化到集合中,便于后續(xù)使用。

2. 數(shù)據(jù)模擬與測(cè)試

在單元測(cè)試或數(shù)據(jù)模擬場(chǎng)景下,需要快速創(chuàng)建一些測(cè)試數(shù)據(jù)集合。例如,模擬一個(gè)包含多個(gè)用戶對(duì)象的列表:

var testUsers = new List<User>
{
    new User { Name = "Alice", Age = 25 },
    new User { Name = "Bob", Age = 30 },
    new User { Name = "Charlie", Age = 35 }
};

簡潔的集合初始化方式讓測(cè)試數(shù)據(jù)的創(chuàng)建更加便捷,提高開發(fā)效率。

集合表達(dá)式作為C#.NET現(xiàn)代化進(jìn)程中的重要特性,通過各種語法糖和新功能,讓集合的創(chuàng)建和初始化變得更加簡潔高效。熟練掌握這些特性,能幫助開發(fā)者編寫出更優(yōu)雅、易讀的代碼。

以上介紹了集合表達(dá)式的常見用法與應(yīng)用場(chǎng)景。


閱讀原文:原文鏈接


該文章在 2025/5/6 12:47:07 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(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è)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲(chǔ)管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(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

主站蜘蛛池模板: 精品国产午夜福利精品推荐 | 狼天天狼天天香蕉综 | 国内精品久 | 国产素人视频在线播放 | 中文字幕乱伦视频 | 三年片观看免费观看大全 | 8x8ⅹ国产精品 | 免费的影视大全 | 三级网站在线免费观看 | 女同另类一区二区三区 | 免费无毒a网站在线观看 | 91精品国产闺| 涩涩爱在线观看 | 国产精品偷窥熟女精品视频 | 国产精品露脸国 | 亚洲综合成人精品成人精品 | 国产精品盗摄在线观看 | 成人亚洲欧美丁香在线观看 | 亚洲线精品一区二区三区四区 | 日韩一区二区三区免费网站 | 欧美大棒插白人 | 动漫美女无 | 人与动人物a级在线播放 | 欧美人牲| 免费在线宅男精品视频 | 亚洲国产成 | 精品二区三区三级日韩人妖 | 传媒mv在线观看视频 | 婷婷亚洲久悠 | 午夜免费福利不 | 午夜老司机永久免费看片 | 午夜天堂| 国产日产高清dvd碟片 | 成人专区一区二区三区四区 | 7160美女图片 | 欧美日韩免费精品一区二区在线 | 在线观看国 | 国内自拍网 | 日韩一二三区免费视频 | 老师裸露胸免 | 国产亚洲中文字幕 |