如何在LINQ C#中同时使用Take和Skip运算符?
Take操作符用于从数组中返回给定数量的元素,而Skip操作符则跳过数组中指定数量的元素。
跳过,从序列中的第一个元素开始,将元素跳过到指定位置。
取,将元素从序列中的第一个元素开始到指定位置。
例子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