如何在 LINQ C# 中同时使用 Take 和 Skip 运算符?

csharpserver side programmingprogramming更新于 2025/4/17 19:37:17

Take 运算符用于从数组中返回给定数量的元素,而 Skip 运算符用于从数组中跳过指定数量的元素。

Skip 运算符从序列中的第一个元素开始跳过直到指定位置的元素。

Take 运算符从序列中的第一个元素开始提取直到指定位置的元素。

示例 1

class Program{
   static void Main(string[] args){
      List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 1, 2, 3, 4, 5,  6, 7, 8, 9, 1, 2, 3, 5, 6, 7, 7, 8, 8 };
      System.Console.WriteLine(numbers.Count());
      var skipRes = numbers.Skip(5);
      System.Console.WriteLine(skipRes.Count());
      Console.ReadLine();
   }
}

输出

28
23

示例 2

class Program{
   static void Main(string[] args){
      List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 5, 6, 7, 7, 8, 8 };
      System.Console.WriteLine(numbers.Count());
      var takeRes = numbers.Take(5);
      System.Console.WriteLine(takeRes.Count());
      Console.ReadLine();
   }
}

输出

28
5

示例 3

class Program{
   static void Main(string[] args){
      List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 5, 6, 7, 7, 8, 8 };
      System.Console.WriteLine(numbers.Count());
      var takeSkipRes = numbers.Skip(10).Take(18);
      System.Console.WriteLine(takeSkipRes.Count());
      Console.ReadLine();
   }
}

输出

28
18

相关文章