Linq中的Take和Skip
Linq中的Take和Skip
var tempsku = skus.Skip(1).Take(5);
这个就是skus中的值,跳过第一个,取后面五个;
返回的类型是int string 就是对象skus
public static IEnumerable<TSource> Take<TSource>(this IEnumerable<TSource> source, int count);
Skip()方法正好是Take()方法的反面,它可以跳过前n个结果,返回剩余的结果。
如果 count 小于等于零,则不枚举 source,并返回空的 IEnumerable<T>。
Take<TSource> 和 Skip<TSource> 方法在功能上补充。 如果给定一个序列 coll 和一个整数 n,则连接 coll.Take(n) 和 coll.Skip(n) 的结果会生成与 coll 相同的序列。
int[] grades = { 59, 82, 70, 56, 92, 98, 85 };
IEnumerable<int> topThreeGrades = grades.OrderByDescending(grade => grade).Take(3);
//take 就是获取
Console.WriteLine("The top three grades are:");
foreach (int grade in topThreeGrades)
{
Console.WriteLine(grade);
}
/*
This code produces the following output:
The top three grades are:
98
92
85
*/
int[] grades = { 59, 82, 70, 56, 92, 98, 85 }; IEnumerable<int> lowerGrades = grades.OrderByDescending(g => g).Skip(3); //Skip就是跳过 Console.WriteLine("All grades except the top three are:"); foreach (int grade in lowerGrades) { Console.WriteLine(grade); } /* This code produces the following output: All grades except the top three are: 82 70 59 56 */
人各有命,上天注定,有人天生为王,有人落草为寇。脚下的路,如果不是你自己的选择,那么旅程的终点在哪,也没人知道。你会走到哪,会遇到谁,都不一定。