一、遍歷方式概述
List是C#中非常常用的集合類型,它支持多種遍歷方式,包括for循環、foreach循環、while循環等常規方式。而對於更高級的需求,還可以通過lambda表達式和LINQ查詢來實現。下面分別對這些方式進行詳細介紹。
二、for循環遍歷
for循環是最常見的遍歷方式,使用起來非常簡單,可以根據索引來訪問List中的元素。但是需要注意的是,在使用for循環時,不能修改List的長度,否則會出現問題。
List<int> list = new List<int>(); for (int i = 0; i < list.Count; i++) { Console.WriteLine(list[i]); }
三、foreach循環遍歷
foreach循環是使用最為廣泛的遍歷方式,它不需要知道List的長度,也不需要使用索引來訪問List中的元素。通過foreach,我們可以輕鬆地遍歷List中的所有元素。
List<int> list = new List<int>(); foreach (int item in list) { Console.WriteLine(item); }
四、while循環遍歷
while循環可以通過索引遍歷List中的元素,也可以通過條件語句來遍歷List中的元素。不過需要注意的是,在使用while循環遍歷List時,需要手動處理索引變數的值。
List<int> list = new List<int>(); int i = 0; while (i < list.Count) { Console.WriteLine(list[i]); i++; }
五、lambda表達式遍歷
lambda表達式是C#中非常強大的特性,它可以簡單明了地描述一個操作,並把它作為參數傳遞給其他方法。在List中,我們可以使用lambda表達式來篩選、過濾、排序等操作。
List<int> list = new List<int>(); list.ForEach(item => Console.WriteLine(item));
六、LINQ查詢遍歷
LINQ查詢是一個非常強大的工具,它可以使用查詢表達式來篩選、過濾、排序等操作。在List中,我們可以使用LINQ查詢來實現複雜的遍歷操作。
List<int> list = new List<int>(); var result = from item in list where item > 0 orderby item descending select item; foreach (int item in result) { Console.WriteLine(item); }
七、小標題1:CBA賽程
1、CBA是中國頂級的職業籃球聯賽,每年都會有不同的比賽賽程。在使用List存儲CBA比賽賽程時,我們可以使用foreach循環遍歷List的每一個元素,然後輸出比賽的相關信息,如比賽日期、對陣雙方、比分等。
class CBAGame { public DateTime Date { get; set; } public string Team1 { get; set; } public string Team2 { get; set; } public int Score1 { get; set; } public int Score2 { get; set; } } List<CBAGame> games = new List<CBAGame>(); foreach (CBAGame game in games) { Console.WriteLine("日期:{0}", game.Date.ToString("yyyy年MM月dd日")); Console.WriteLine("比賽:{0} vs {1}", game.Team1, game.Team2); Console.WriteLine("比分:{0} - {1}", game.Score1, game.Score2); }
八、小標題2:Clash
2、Clash是一款熱門手游,同時也是一款電子競技遊戲。在使用List存儲Clash比賽數據時,我們可以使用for循環遍歷List的每一個元素,然後根據不同的數據類型輸出相關信息。
class ClashGame { public int Rank { get; set; } public string Name { get; set; } public int Trophies { get; set; } public int Wins { get; set; } } List<ClashGame> games = new List<ClashGame>(); for (int i = 0; i < games.Count; i++) { Console.WriteLine("排名:{0}", games[i].Rank); Console.WriteLine("名字:{0}", games[i].Name); Console.WriteLine("獎盃數:{0}", games[i].Trophies); Console.WriteLine("勝場數:{0}", games[i].Wins); }
九、小標題3:CCTV5節目表
3、CCTV5是中國最大的體育頻道,每天都會播出眾多賽事。在使用List存儲CCTV5節目表時,我們可以使用while循環遍歷List的每一個元素,然後根據不同的時間段輸出相關節目。
class TVProgram { public DateTime StartTime { get; set; } public DateTime EndTime { get; set; } public string Name { get; set; } } List<TVProgram> programs = new List<TVProgram>(); int i = 0; while (i < programs.Count) { Console.WriteLine("{0} - {1}:{2}", programs[i].StartTime.ToString("HH:mm"), programs[i].EndTime.ToString("HH:mm"), programs[i].Name); i++; }
十、小標題4:C反應蛋白高說明什麼
4、C反應蛋白是體內一種常見的蛋白質,它的水平可以用於監測身體的炎症反應程度。在使用List存儲C反應蛋白水平數據時,我們可以使用lambda表達式遍歷List的每一個元素,並計算平均值。
List<double> crp = new List<double>(); double average = crp.Average(); Console.WriteLine("C反應蛋白平均水平:{0}", average);
十一、小標題5:C開頭的火車是什麼車
5、C開頭的火車是指由中國鐵路總公司運營的高速列車,其中包括CRH1、CRH2、CRH3、CRH5、CRH6、CRH380等多個子系列。在使用List存儲C系列火車信息時,我們可以使用LINQ查詢來篩選並輸出相關數據。
class Train { public string Name { get; set; } public string Series { get; set; } public int MaxSpeed { get; set; } } List<Train> trains = new List<Train>(); var result = from train in trains where train.Series.StartsWith("CRH") select train.MaxSpeed; foreach (int speed in result) { Console.WriteLine("最高時速:{0} km/h", speed); }
十二、小標題6:Chat GPT人工智慧
6、Chat GPT是一個基於人工智慧技術的對話機器人,它可以為用戶提供智能化的對話體驗。在使用List存儲Chat GPT對話數據時,我們可以使用foreach循環遍歷List的每一個元素,並根據不同的對話類型進行相關處理。
class ChatData { public string Type { get; set; } public string Content { get; set; } } List<ChatData> data = new List<ChatData>(); foreach (ChatData item in data) { switch (item.Type) { case "Text": Console.WriteLine(item.Content); break; case "Image": // 處理圖片 break; case "Link": // 處理鏈接 break; default: break; } }
原創文章,作者:NCNZ,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/145673.html