zoukankan      html  css  js  c++  java
  • C# LINQ(2)

    前一章的代码LINQ都是以select结尾。

    之前也说过可以group结尾。

    那么怎么使用呢?

    还是一样的条件,查询小于5大于0的元素

    代码:

      var NumArray = new[] {0,1,2,3,4,5,6,7,8,9 };
    
                var list = from i in NumArray
    
                           where i > 0 && i < 5
    
                           group i by i;
                          
    
                
                foreach (var item in list)
                    foreach(var s in item)
                    Console.Write($" {s}");
    
                Console.ReadKey();

    LINQ的代码没有多少变化,但是输出的代码却变了。

    为什么?

    因为group 的类型推断变了。

    现在变成:IEnumerable<IGrouping<>>

    是一个集合的嵌套,所以输出的语句也是变了。

    主要解释下最后的group:

    group..by

    by时分组依据。

    也就是可以再次根据条件筛选。

    比如:

       var NumArray = new[] {0,1,2,3,4,5,6,7,8,9 };
    
                var list = from i in NumArray
    
                           where i > 0 && i < 5
    
                           group i by i<4;//再次筛选,小于2的进行分组
    
    
    
                foreach (var item in list)
                {
                    Console.Write($"
    key : { item.Key}    value:");
    
                    foreach (var s in item)
                    {
                        Console.Write($" {s} ");
                    }
                }
                Console.ReadKey();

    根据by后面的表达式true false进行分组。

  • 相关阅读:
    hadoop
    flume
    IP地址查询
    flinkStreamSQL
    StreamSets
    Algorightm----DynamicProgramming
    google
    vue学习
    使用Webstorm快速启动Vue项目配置
    数据库——关系代数中的除法运算【转】
  • 原文地址:https://www.cnblogs.com/T-ARF/p/9228408.html
Copyright © 2011-2022 走看看