【问题标题】:LINQ Query How to select Max value between start and end indexLINQ查询如何选择开始和结束索引之间的最大值
【发布时间】:2011-12-28 20:45:21
【问题描述】:

如何使用 LINQ 查询数字数组以获得起始索引和结束索引之间的最大值。

int[] numbers = { 1, 2, 3, 4 ,5 ,6 ,7 ,8 ,9 ,8 ,7 ,6, 5 ,4 ,3 ,2 ,1};

我想找到 numbers[5] 和 numbers[8] 之间的最大值

谢谢

迈克

【问题讨论】:

    标签: c# linq


    【解决方案1】:

    您需要跳过四个元素,然后取接下来四个中的最大值(#5..#8,包括):

    var begin = 5;
    var end = 8;
    var res = numbers.Skip(begin-1).Take(end-begin+1).Max();
    

    【讨论】:

      【解决方案2】:

      怎么样:

      numbers.Skip( 5 ).Take( 4 ).Max();
      

      【讨论】:

        【解决方案3】:

        类似这样的:?

        numbers.Where((n, i) => i >= 5 && i <= 8).Max();
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2014-02-23
          • 2021-11-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-01-11
          • 2016-08-06
          相关资源
          最近更新 更多