[C#.Net&Linq]LINQ to Object 学习笔记(资料群组GroupBy、ToLookup、ToDictionary)
Posted on 2011-07-01 15:01 12hao 阅读(1062) 评论(0) 收藏 举报
1: //===GroupBy===
2: //IEnumerable<IGrouping<TKey,TElement>>列举型别
3: IEnumerable<IGrouping<string,Authors>> contacts = from author in Authors
4: group author by author.State;5: //GroupBy转换后,存储在IGrouping
6: //IGrouping<TKey,TElement>
7: foreach(IGrouping<string,Authors> item in contacts)
8: { 9: Console.WriteLine(item.Key); 10: Console.WriteLine(item); 11: }12: //使用匿名型別
13: var contact = Authors.GroupBy(author=>author.State);14: foreach(var item in contact)
15: { 16: Console.WriteLine(item.Key); 17: Console.WriteLine(item); 18: } 19: 20: 21: //===ToLookup===
22: //集合物件Authors的ToLookup方法,产生泛型版本的ILookup
23: ILookup<string,Authors> contacts = Authors.ToLookup(author=>author.State);
24: //与GroupBy一样ToLookup转换后,存储在IGrouping
25: //IGrouping<TKey,TElement>
26: foreach(IGrouping<string,Authors> items in contacts)
27: { 28: Console.WriteLine(items.Key); 29: Console.WriteLine(items); 30: }31: //使用匿名型別
32: var contact = Authors.ToLookup(author=>author.State);33: foreach(var items in contact)
34: { 35: Console.WriteLine(items.Key); 36: Console.WriteLine(items); 37: }1: //===ToDictionary===2: Dictionary<string, Authors> contacts = Authors.ToDictionary(author=>author.Au_id);3: foreach(KeyValuePair<string, Authors> item in contacts)4: {5: Console.WriteLine(item.Key);6: Console.WriteLine(item.Value);7: }8: //使用匿名型別9: var contacts = Authors.ToDictionary(author=>author.Au_id);10: foreach(var item in contacts)11: {12: Console.WriteLine(item.Key);13: Console.WriteLine(item.Value);14: }
浙公网安备 33010602011771号