首页 > 代码库 > LINQ 101——分组、Set、转换、Element
LINQ 101——分组、Set、转换、Element
一、Grouping(分组)
例1:对于0-9数按被3整除的结果分组
代码:
1 static void Linq1() 2 { 3 int[] numbers = { 5, 3, 2, 4, 0, 7, 8, 6, 9, 1 }; 4 var numModBy3 = from n in numbers 5 group n by n % 3 6 into g 7 select new { Remainder = g.Key, Numbers = g }; 8 9 foreach (var g in numModBy3)10 {11 Console.Write("被3整除余 {0} : ", g.Remainder);12 foreach (var num in g.Numbers)13 {14 Console.Write("{0} ", num);15 }16 Console.WriteLine();17 }18 }
例2:对单词按首字母分组
代码:
1 static void Linq2() 2 { 3 string[] words = { "blueberry", "chimpanzee", "abacus", "banana", "apple", "cheese" }; 4 var groupedData = http://www.mamicode.com/from w in words 5 group w by w[0] 6 into g 7 orderby g.Key // 加排序 8 select new { FirstChar = g.Key, Words = g }; 9 foreach (var g in groupedData)10 {11 Console.Write("以 {0} 字母开头的有 : ", g.FirstChar);12 foreach (var word in g.Words)13 {14 Console.Write("{0} ", word);15 }16 Console.WriteLine();17 }18 }
二、Set(集合)
Distinct去重
source.Distinct();
其他 Union、Intersect、Except 参见 LINQ 101 Sample
三、Conversion(转换)
ToList
ToDictionary
四、Element(元素操作)
First
FirstOrDefault
LINQ 101——分组、Set、转换、Element
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。