C#中其他简单LINQ查询表达式的简单使用介绍
生活随笔
收集整理的這篇文章主要介紹了
C#中其他简单LINQ查询表达式的简单使用介绍
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本文主要記錄下其他簡單LINQ表達式,因為比較簡單,記錄下以后方便回憶,本文也會持續更新。
一些有用的LINQ擴展方法:
| LINQ表達式 | 作用 | 是否延遲查詢 |
| Range | 生成指定范圍內的整數的序列 | ? |
| Repeat | 生成包含一個重復值的序列 | ? |
| Skip | 跳過指定數量的元素,返回剩余元素 | 是 |
| SkipWhile | 跳過滿足條件的元素,直到不滿足條件為止,然后返回剩余元素 | 是 |
| Take | 獲取指定數量的元素 | 是 |
| TakeWhile | 獲取滿足條件的元素,直到不滿足添加為止,然后返回滿足條件的元素 | 是 |
| Where | 過濾掉數據中不匹配的元素 | 是 |
| Select | 設計一個查詢結果 | 是 |
| SelectMany | 把每個數據項投射到一個條目序列之中,然后把所有這些結果序列連接成一個序列 | 是 |
| Reverse | 反轉數據源中數據項的順序 | 是 |
| OrderBy | 基于lambda表達式返回的值對源數據進行排序 | 是 |
| OrderByDescending | 基于lambda表達式返回的值對源數據進行排序 | 是 |
| ALL | 如果源數據中的所有元素都與謂詞匹配,則返回true | 否 |
| Any | 如果源數據中至少有一個元素與謂詞匹配,則發揮true | 否 |
| Contains | 如果源數據含有指定的元素或值,則返回true | 否 |
| Count | 返回數據源中的元素數量 | 否 |
| First | 返回數據源中的第一個元素 | 否 |
| FirstOrDefault | 返回數據源中的第一個元素,如果沒有,則返回默認值 | 否 |
| Last | 返回數據源中的最后一個元素 | 否 |
| LastOrDeafult | 返回數據源中的最后一個元素,如果沒有,則返回默認值 | 否 |
| Max | 返回lambda表達式的最大值 | 否 |
| Min | 返回lambda表達式的最小值 | 否 |
| Single | 返回數據源的第一個元素,沒有或者多個匹配是拋出異常 | 否 |
| SingleOrDefault | 返回數據源的第一個元素,沒有時返回默認值,多個匹配則拋出異常 | 否 |
| Sum | 對選定的值進行求和 | 否 |
| ToArray ToDictionary ToList | 把數據源轉化成數組或者其他集合類型 | 否 |
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
測試代碼如下圖所示:?
static void Main(string[] args) {List<Phone> PhoneLists = new List<Phone>(){new Phone { Country = "中國", City = "北京", Name = "小米" },new Phone { Country = "中國",City = "北京",Name = "華為"},new Phone { Country = "中國",City = "北京",Name = "聯想"},new Phone { Country = "中國",City = "臺北",Name = "魅族"},new Phone { Country = "日本",City = "東京",Name = "索尼"},new Phone { Country = "日本",City = "大阪",Name = "夏普"},new Phone { Country = "日本",City = "東京",Name = "松下"},new Phone { Country = "美國",City = "加州",Name = "蘋果"},new Phone { Country = "美國",City = "華盛頓",Name = "三星"},new Phone { Country = "美國",City = "華盛頓",Name = "HTC"}};Console.WriteLine("Range結果如下所示:");IEnumerable<int> s = Enumerable.Range(1, 10);foreach (var list in s){Console.Write(list + ",");}Console.WriteLine();Console.WriteLine("Repeat結果如下所示:");IEnumerable<Phone> Repeat = Enumerable.Repeat(PhoneLists.FirstOrDefault(),5);foreach (var list in Repeat){Console.WriteLine($"{list.Country} -- {list.City} --{list.Name}");}var sLists = PhoneLists.Skip(3);Console.WriteLine("Skip結果如下所示:");foreach (var list in sLists){Console.WriteLine($"{list.Country} -- {list.City} --{list.Name}");}Console.WriteLine("SkipWhile結果如下所示:");var swLists = PhoneLists.SkipWhile(p => p.Country.Equals("日本"));foreach (var list in swLists){Console.WriteLine($"{list.Country} -- {list.City} --- {list.Name}");}Console.WriteLine("Take結果如下所示:");var tLists = PhoneLists.Take(3);foreach (var list in tLists){Console.WriteLine($"{list.Country} -- {list.City} --- {list.Name}");}Console.WriteLine("TakeWhile結果如下圖所示:");var twLists = PhoneLists.TakeWhile(p => p.Country.Equals("中國"));foreach (var list in twLists){Console.WriteLine($"{list.Country} -- {list.City} --- {list.Name}");}Console.Read(); }?輸出結果如下圖所示:
總結
以上是生活随笔為你收集整理的C#中其他简单LINQ查询表达式的简单使用介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hibernate——(3)主键生成策略
- 下一篇: C#中IEnumerableT.Sele