C#中对泛型List进行分组输出元素
生活随笔
收集整理的這篇文章主要介紹了
C#中对泛型List进行分组输出元素
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
背景:在輸出列表時,往往需要按照某一字段進行分組,比如在輸出城市列表時,按照首字母進行分組,輸出學生列表時,按照年級進行分組,然后再對分組的結果按照其他的字段進行排序。
如存在以下STU學生類,代碼如下:
1 public class STU 2 { 3 public int ID { get; set; } 4 public string Name { get; set; } 5 public int Age { get; set; } 6 public string City { get; set; } 7 }存在如下學生列表:
1 List<STU> stuList = new List<STU>() 2 { 3 new STU{ID=1,Name="Lily",Age=18,City="NewYork"}, 4 new STU{ID=2,Name="Lucy",Age=20,City="NewYork"}, 5 new STU{ID=1,Name="LiLei",Age=18,City="BeiJIng"} 6 };先按照城市進行分組,在對同一城市中的學生,按照年齡進行排序,分別輸出,代碼如下:
1 foreach (IGrouping<string,STU> group in stuList.GroupBy(c=>c.City)) 2 { 3 Console.WriteLine("當前的城市為" + group.Key); 4 foreach (STU stu in group.OrderBy(a=>a.Age)) 5 { 6 Console.Write(stu.Name+";"); 7 } 8 Console.WriteLine(); 9 }? 注意,IGroupoing存在兩個參數,第一個參數對應于分組字段的類型,也就是說如果按照城市進行分組,則第一個參數的類型應該是string,如果是按照年齡進行分組,參數類型就應該是int。第二個參數,對應于List元素的類型,本例中為STU。
轉載于:https://www.cnblogs.com/SharpL/p/4675645.html
總結
以上是生活随笔為你收集整理的C#中对泛型List进行分组输出元素的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三无秒批信用卡的银行有哪些?这三家银行的
- 下一篇: c# char unsigned_dll