国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C#,入門(mén)教程(20)——列表(List)的基礎(chǔ)知識(shí)

這篇具有很好參考價(jià)值的文章主要介紹了C#,入門(mén)教程(20)——列表(List)的基礎(chǔ)知識(shí)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

上一篇:

C#,入門(mén)教程(19)——循環(huán)語(yǔ)句(for,while,foreach)的基礎(chǔ)知識(shí)https://blog.csdn.net/beijinghorn/article/details/124060844

c# list,C#入門(mén)教程 Beginner‘s Recipes,c#,入門(mén),教程,List

List顧名思義就是數(shù)據(jù)列表,區(qū)別于數(shù)據(jù)數(shù)組(array)。
List比數(shù)組提供強(qiáng)大得多!多!多!多!的功能,能存儲(chǔ)更多!多!多!類(lèi)型的數(shù)據(jù)(泛型)!
List是更多數(shù)據(jù)集合(序表SortedList、鏈表LinkedList、堆棧Stack、隊(duì)列Quene及哈希表Hashtable等)的基礎(chǔ)。
因而,可以說(shuō):無(wú)列表,不編程!

一、命名空間

using System.Text;
using System.Linq;
using System.Collections;
using System.Collections.Generic;

如果代碼提示錯(cuò)誤信息,先添加上面的這些命名空間。

if (入門(mén) List )
{
?? ?本文就夠了。
}
else if (想精通 List )
{
?? ?請(qǐng)掌握 Linq 與 Lamda 表達(dá)式的基礎(chǔ)知識(shí)。
}
else?
{
?? ?關(guān)注我!無(wú)窮知識(shí)傳給你!
}

二、List的聲明(定義)

1、List聲明

語(yǔ)法:

List<T> tList = new List<T>(); ?


注:<T>即為泛型,可以理解為任意的數(shù)據(jù)類(lèi)型(數(shù)值、類(lèi)、結(jié)構(gòu)體、object及其他數(shù)據(jù)體)。

實(shí)例:

List<string> stringList = new List<string>();
List<Classmate>classmateList = new List<Classmate>();

2、List初值

可以在聲明一個(gè)List的同時(shí),給出初值。

List<string> stringList = new List<string>() {?
?? ?"Tom", "Jerry", "!"?
};
List<Classmate> classmateList = new List<Classmate>() {
?? ?new Classmate("1", "Tom"),?
?? ?new Classmate("2", "Jerry")
};

3、數(shù)組array轉(zhuǎn)為L(zhǎng)ist

語(yǔ)法:

List<T> tList =new List<T> (數(shù)據(jù)集);


實(shí)例:

string[] stringArray = {?
?? ?"Tom", "Jerry", "!" ?
};
List<string> stringList = new List<string>(stringArray);
//或者(Linq方法):
List<string> stringList = stringArray.ToList();
//反之:
string[] stringArray = stringList.ToArray();

c# list,C#入門(mén)教程 Beginner‘s Recipes,c#,入門(mén),教程,List

三、List的基礎(chǔ)功能與常用操作

1、List的數(shù)據(jù)總數(shù)

語(yǔ)法:int List.Count()
實(shí)例:int count = stringList.Count();

2、清空List

語(yǔ)法:void List.Clear()?
實(shí)例:stringList.Clear();
必要的時(shí)候清空列表是好習(xí)慣!

3、List的遍歷

語(yǔ)法:

// T的類(lèi)型與mList聲明時(shí)一樣
string result = "";
foreach (T element in tList) ?
{
? ? result += element.ToString();
}

實(shí)例(制作同學(xué)花名冊(cè)):

List<Classmate> classmateList = new List<Classmate>();
//(因個(gè)人隱私需要,此處又省略。。。)
StringBuilder sb = new StringBuilder();
sb.AppendLine("<table>");
sb.AppendLine("<tr>");
sb.AppendLine("<td>序號(hào)</td>");
sb.AppendLine("<td>昵稱(chēng)</td>");
sb.AppendLine("<td>姓名</td>");
sb.AppendLine("<td>手機(jī)號(hào)</td>");
sb.AppendLine("<td>郵箱</td>");
sb.AppendLine("</tr>");
foreach (Classmate mo in classmateList)
{
? ? sb.AppendLine("<tr>");
? ? sb.AppendLine("<td>" + mo.Id + "</td>");
? ? sb.AppendLine("<td>" + mo.Nickname + "</td>");
? ? sb.AppendLine("<td>" + mo.Name + "</td>");
? ? sb.AppendLine("<td>" + mo.Mobile + "</td>");
? ? sb.AppendLine("<td>" + mo.Email + "</td>");
? ? sb.AppendLine("</tr>");
}
sb.AppendLine("</table>");

4、添加一個(gè)或一組數(shù)據(jù)

語(yǔ)法:List.Add(T item)
語(yǔ)法:List.AddRange(數(shù)據(jù)集合) ??
注意:狗尾續(xù)貂,數(shù)據(jù)添加在尾部;

實(shí)例:

List<string> stringList = new List<string>();
stringList.Add("Tom");

//或:
string[] stringArray = {?
?? ?"Tom", "Jerry", "!" ?
};
List<string> firstStringList = new List<string>();
firstStringList.AddRange(stringArray);

//又或:
List<string> secondStringList = new List<string>();
//(此處可能省略幾句話(huà)。。。)
stringList.AddRange(secondStringList);

5、按指定位置添加數(shù)據(jù)

語(yǔ)法: Insert(int index, T item);?
實(shí)例:

List<string> stringList = new List<string>();
stringList.Insert(1, "House");

6、刪除元素

① 按數(shù)據(jù)刪除
語(yǔ)法:List.Remove(T item)
② 按位置刪除
語(yǔ)法:List.RemoveAt(int index); ??
③ 批量刪除
語(yǔ)法:List.RemoveRange(int index, int count);
④ 按條件刪除
語(yǔ)法:List.RemoveAll(Predicate<T> match)
方法:刪除滿(mǎn)足條件的所有元素。

實(shí)例:

stringList.Remove("Tom");
stringList.RemoveAt(0);
stringList.RemoveRange(1, 2);
//(Lamda表達(dá)式)
stringList.RemoveAll(t => t.Id > 10);

7、判斷List是否包含某個(gè)數(shù)據(jù)?

語(yǔ)法:List.Contains(T item) ??
返回:true 或 false

實(shí)例:
string result = "";
if (mList.Contains("Tom"))
{
? ? result = "Tom is in the list";
}
else
{
? ? result = "Tom is not in the list";
}

四、List的高級(jí)應(yīng)用

1、List排序

語(yǔ)法:List.Sort()
按數(shù)據(jù)的默認(rèn)升序排序;
stringList.Sort();

這個(gè)實(shí)際上沒(méi)有什么用處,強(qiáng)烈推薦下面的語(yǔ)法:
語(yǔ)法:
tList.Sort(delegate(T a, T b) {
?? ?return Comparer<long>.Default.Compare(a.Hashcode(), b.Hashcode());
});

實(shí)例(正序):

classmateList.Sort(delegate(Classmate a, Classmate b)) {
?? ?if(a.Id > b.Id) {
?? ??? ?return 1;
?? ?}
?? ?else {
?? ??? ?return -1;
?? ?}
});
//實(shí)例(倒序):
classmateList.Sort(delegate(Classmate a, Classmate b)) {
?? ?if(b.Id > a.Id) {
?? ??? ?return 1;
?? ?}
?? ?else {
?? ??? ?return -1;
?? ?}
});
//實(shí)例(倒序,簡(jiǎn)約寫(xiě)法):
classmateList.Sort(delegate(Classmate a, Classmate b)) {
?? ?return ((b.Id > a.Id) ? 1 : -1);
});
//或者,實(shí)例(倒序,簡(jiǎn)約寫(xiě)法):
classmateList.Sort(delegate(Classmate a, Classmate b)) {
?? ?return Comparer<int>.Default.Compare(b.Id, a.Id);
});

列表的排序是使用頻率非常高的功能,應(yīng)該熟練掌握!

2、List反轉(zhuǎn)

語(yǔ)法:List.Reverse()

3、List檢索與批量檢索

① List.Find方法:檢索滿(mǎn)足條件的第一個(gè)元素;?
語(yǔ)法:public List<T> Find(Predicate<T> match);

② List.FindAll方法:檢索滿(mǎn)足條件的所有元素;?
語(yǔ)法:public List<T> FindAll(Predicate<T> match);

③ List.Where方法:檢索滿(mǎn)足條件的所有元素;(類(lèi)似FindAll)。
語(yǔ)法:public List<T> Where(Predicate<T> match);

④ List.FindLast 方法:檢索滿(mǎn)足條件的最后一個(gè)元素;?
語(yǔ)法:public T FindLast(Predicate<T> match);

實(shí)例(推薦使用Lamda表達(dá)式):

List<Classmate> someClassmateList = classmateList.Find(t => t.Mobile.StartsWith("139"));
List<Classmate> someClassmateList = classmateList.FindAll(t => t.Mobile.StartsWith("139"));
List<Classmate> someClassmateList = classmateList.Where(t => t.Mobile.StartsWith("139"));
List<Classmate> someClassmateList = classmateList.FindLast(t => t.Mobile.StartsWith("139"));

4、List的片段提取

語(yǔ)法:List.Take(int number);
方法:獲得前number個(gè)數(shù)據(jù),構(gòu)成一個(gè)數(shù)據(jù)子集;

List<Classmate> top3List = classmateList.Take(3);

一般先排序,再提?。?/strong>

?——————————————————————

POWER BY 315SOFT.COM &
TRUFFER.CN

下一篇:

?C#,入門(mén)教程(21)——命名空間(namespace)與程序結(jié)構(gòu)的基礎(chǔ)知識(shí)https://blog.csdn.net/beijinghorn/article/details/124140653文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-794698.html

到了這里,關(guān)于C#,入門(mén)教程(20)——列表(List)的基礎(chǔ)知識(shí)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 電腦鍵盤(pán)功能基礎(chǔ)知識(shí),快速入門(mén),抓住這份詳細(xì)教程

    電腦鍵盤(pán)功能基礎(chǔ)知識(shí),快速入門(mén),抓住這份詳細(xì)教程

    在互聯(lián)網(wǎng)生活發(fā)達(dá)的今天,電腦已經(jīng)成為了學(xué)習(xí)工作的必備工具。而用來(lái)操作電腦的關(guān)鍵,就是我們經(jīng)常使用的鍵盤(pán)和鼠標(biāo)。最近有不少的小伙伴來(lái)私信小編,希望小編做一個(gè)電腦鍵盤(pán)功能基礎(chǔ)知識(shí)介紹的詳細(xì)教程。這不,小編應(yīng)大家要求,跟大家分享一下電腦鍵盤(pán)各個(gè)按鍵

    2024年02月09日
    瀏覽(15)
  • 【ESP8266教程】零基礎(chǔ)入門(mén)學(xué)用物聯(lián)網(wǎng)-基礎(chǔ)知識(shí)篇(太極創(chuàng)客團(tuán)隊(duì))學(xué)習(xí)筆記

    【ESP8266教程】零基礎(chǔ)入門(mén)學(xué)用物聯(lián)網(wǎng)-基礎(chǔ)知識(shí)篇(太極創(chuàng)客團(tuán)隊(duì))學(xué)習(xí)筆記

    提示:這里可以添加本文要記錄的大概內(nèi)容: 例如:隨著人工智能的不斷發(fā)展,機(jī)器學(xué)習(xí)這門(mén)技術(shù)也越來(lái)越重要,很多人都開(kāi)啟了學(xué)習(xí)機(jī)器學(xué)習(xí),本文就介紹了機(jī)器學(xué)習(xí)的基礎(chǔ)內(nèi)容。 提示:以下是本篇文章正文內(nèi)容,下面案例可供參考 ????????NodeMCU上的D2引腳引出ESP82

    2024年04月29日
    瀏覽(69)
  • LaTeX詳細(xì)安裝教程|LaTeX 基礎(chǔ)知識(shí)|LaTeX 常用語(yǔ)法|LaTeX 快速入門(mén)

    LaTeX詳細(xì)安裝教程|LaTeX 基礎(chǔ)知識(shí)|LaTeX 常用語(yǔ)法|LaTeX 快速入門(mén)

    LaTeX 是一種專(zhuān)業(yè)的排版系統(tǒng),主要用于科技文獻(xiàn)、學(xué)術(shù)論文、書(shū)籍等的排版。與傳統(tǒng)的文字處理軟件相比,LaTeX 可以更好地管理大型文字項(xiàng)目,并提供了豐富的數(shù)學(xué)公式和符號(hào)支持。本篇博客將介紹 LaTeX 的基礎(chǔ)知識(shí)、常用語(yǔ)法以及安裝教程。 LaTeX 具有如下特點(diǎn): 專(zhuān)業(yè)的排版

    2024年02月05日
    瀏覽(28)
  • STC8H系列單片機(jī)入門(mén)教程之ADC基礎(chǔ)知識(shí)(四)

    STC8H系列單片機(jī)入門(mén)教程之ADC基礎(chǔ)知識(shí)(四)

    目錄 一、A/D轉(zhuǎn)換過(guò)程 二、ADC轉(zhuǎn)換流程圖 三、采樣定理 四、ADC基本參數(shù) 4.1、分辨率 4.2、采樣速率 4.3、轉(zhuǎn)換時(shí)間 4.4、量程? 4.5、最低有效位 五、靜態(tài)參數(shù) 5.1、微分非線性 5.2、積分非線性 六、逐次逼近型模數(shù)轉(zhuǎn)換器 七、ADC常用分壓電路 八、示例代碼 ADC即模數(shù)轉(zhuǎn)換器,用來(lái)

    2024年04月11日
    瀏覽(23)
  • Python入門(mén)教程:掌握f(shuō)or循環(huán)、while循環(huán)、字符串操作、文件讀寫(xiě)與異常處理等基礎(chǔ)知識(shí)

    Python入門(mén)教程:掌握f(shuō)or循環(huán)、while循環(huán)、字符串操作、文件讀寫(xiě)與異常處理等基礎(chǔ)知識(shí)

    在 Python 中,for 循環(huán)用于遍歷序列(list、tuple、range 對(duì)象等)或其他可迭代對(duì)象。for 循環(huán)的基本語(yǔ)法如下: 其中, 變量 表示每次循環(huán)中取出的一個(gè)元素, 可迭代對(duì)象 表示被遍歷的對(duì)象。下面是一個(gè) for 循環(huán)的例子: 輸出結(jié)果為: 代碼中, fruits 是一個(gè)列表, fruit 是當(dāng)前循

    2024年02月10日
    瀏覽(24)
  • 快速上手MATLAB:科研、工程、數(shù)據(jù)分析,MATLAB入門(mén)(下)教你基礎(chǔ)知識(shí)!分享《MATLAB初學(xué)者教程 MATLAB編程-菜鳥(niǎo)入門(mén)(清晰版)》

    快速上手MATLAB:科研、工程、數(shù)據(jù)分析,MATLAB入門(mén)(下)教你基礎(chǔ)知識(shí)!分享《MATLAB初學(xué)者教程 MATLAB編程-菜鳥(niǎo)入門(mén)(清晰版)》

    1、《MATLAB完全學(xué)習(xí)手冊(cè)(視頻+課件+代碼)》 2、《MATLAB入門(mén)》 3、《詳解MATLAB在科學(xué)計(jì)算中的應(yīng)用》 4、《案例二 MATLAB與Excel交互》 5、《MATLAB初學(xué)者教程 MATLAB編程-菜鳥(niǎo)入門(mén)(清晰版)》 6、《MATLAB常用函數(shù)參考 MATLAB函數(shù)匯總 精通MATLAB》 7、等等。。。。 前兩天,我們?cè)冢?/p>

    2024年02月07日
    瀏覽(111)
  • c#入門(mén)教程(有一定計(jì)算機(jī)基礎(chǔ)的人看)

    c#入門(mén)教程(有一定計(jì)算機(jī)基礎(chǔ)的人看)

    廢話(huà)不說(shuō),有一定基礎(chǔ)的人看,如java等程序員 開(kāi)發(fā)語(yǔ)言,為什么要學(xué)?主流游戲是用這個(gè)開(kāi)發(fā) c#微軟做的,微軟做了個(gè).net framework,c#運(yùn)行在這個(gè)之上。windows自帶.net framework,但太辣雞了,只支持windows,效果不好,就沒(méi)更了,然后微軟出了個(gè)新的 .net core ,支持linux,windows,m

    2024年02月04日
    瀏覽(31)
  • JDK20下載+安裝+環(huán)境配置入門(mén)教程(非常詳細(xì)),從零基礎(chǔ)入門(mén)到精通,看完這一篇就夠了(附安裝包)

    JDK20下載+安裝+環(huán)境配置入門(mén)教程(非常詳細(xì)),從零基礎(chǔ)入門(mén)到精通,看完這一篇就夠了(附安裝包)

    軟件下載 軟件:JDK 版本:20 語(yǔ)言:簡(jiǎn)體中文 大?。?59.60M 安裝環(huán)境:Win7及以上版本;64位操作系統(tǒng) 硬件要求:CPU@2.0GHz ;內(nèi)存@4G(或更高) 下載通道①百度網(wǎng)盤(pán)丨64位下載鏈接: https://pan.baidu.com/s/1AbHK3yqFHhlxb1VX1LnJ7g?pwd=6789 提取碼:6789 1、 軟件介紹 2,切換Windows系統(tǒng),然后點(diǎn)

    2024年02月08日
    瀏覽(29)
  • C#入門(mén)教程

    一、C#的發(fā)展歷史 C#是.net開(kāi)發(fā)平臺(tái)支持的多種語(yǔ)言中的一門(mén)編程語(yǔ)言。是Microsoft專(zhuān)門(mén)為.net 平臺(tái)開(kāi)發(fā)的一種新的編程語(yǔ)言,語(yǔ)法類(lèi)似于C語(yǔ)言。 1998年,Delphi設(shè)計(jì)的第一個(gè)C#語(yǔ)言版本 2002年,發(fā)布了第一個(gè)C#版本(1.0) 二、C#能干什么 1.Windows窗口應(yīng)用程序。Microsoft office,Windows外觀應(yīng)

    2024年02月04日
    瀏覽(25)
  • C# 入門(mén)教程

    C# 入門(mén)教程

    C#是一個(gè)簡(jiǎn)單的,現(xiàn)代的,通用的,面向?qū)ο蟮木幊陶Z(yǔ)言,它是由微軟(Microsoft)開(kāi)發(fā)的。 下面列出了C#成為一種廣泛應(yīng)用的專(zhuān)業(yè)語(yǔ)言的原因: 現(xiàn)代的、通用的編程語(yǔ)言。 面向?qū)ο蟆?面向組件。 容易學(xué)習(xí)。 結(jié)構(gòu)化語(yǔ)言。 它產(chǎn)生高效率的程序。 它可以在多種計(jì)算機(jī)平臺(tái)上編

    2024年01月16日
    瀏覽(54)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包