Linq中的TakeWhile和SkipWhile的介绍
2015-06-13 09:14
218 查看
Linq中的SkipWhile
1、含义
(1)、对数据源进行枚举,从第一个枚举得到的元素开始,调用客户端的predicate
(2)、如果返回true,则跳过该元素,继续进行枚举操作.
(3)、但是,如果一旦predicate返回为false,则该元素以后的所有元素,都不会再调用predicate,而全部枚举给客户端.
2、实例
二、Linq中的TakeWhile
1、含义
(1)、对数据源进行枚举,从第一个枚举得到的元素开始,调用客户端传入的predicate( c.Name == ""woodyN")
(2)、如果这个predicate委托返回true的话,则将该元素作为Current元素返回给客户端,并且,继续进行相同的枚举,判断操作.
(3)、但是,一旦predicate返回false的话,MoveNext()方法将会返回false,枚举就此打住,忽略剩下的所有元素.
2、实例
string[] fruits = { "apple", "banana", "mango", "orange",
"passionfruit", "grape" };
IEnumerable<string> query =
fruits.TakeWhile(fruit => String.Compare("orange", fruit, true) != 0);
foreach (string fruit in query)
{
Console.WriteLine(fruit);
}
/**//*
This code produces the following output:
apple
banana
mango
*/
文章转载自: Linq中的TakeWhile和SkipWhile http://www.studyofnet.com/news/872.html
Linq中的SkipWhile
1、含义
(1)、对数据源进行枚举,从第一个枚举得到的元素开始,调用客户端的predicate
(2)、如果返回true,则跳过该元素,继续进行枚举操作.
(3)、但是,如果一旦predicate返回为false,则该元素以后的所有元素,都不会再调用predicate,而全部枚举给客户端.
2、实例
int[] grades = { 59, 82, 70, 56, 92, 98, 85 }; IEnumerable<int> lowerGrades = grades .OrderByDescending(grade => grade) .SkipWhile(grade => grade >= 80); Console.WriteLine("All grades below 80:"); foreach (int grade in lowerGrades) { Console.WriteLine(grade); } /**//* This code produces the following output: All grades below 80: 70 59 56 */
二、Linq中的TakeWhile
1、含义
(1)、对数据源进行枚举,从第一个枚举得到的元素开始,调用客户端传入的predicate( c.Name == ""woodyN")
(2)、如果这个predicate委托返回true的话,则将该元素作为Current元素返回给客户端,并且,继续进行相同的枚举,判断操作.
(3)、但是,一旦predicate返回false的话,MoveNext()方法将会返回false,枚举就此打住,忽略剩下的所有元素.
2、实例
string[] fruits = { "apple", "banana", "mango", "orange",
"passionfruit", "grape" };
IEnumerable<string> query =
fruits.TakeWhile(fruit => String.Compare("orange", fruit, true) != 0);
foreach (string fruit in query)
{
Console.WriteLine(fruit);
}
/**//*
This code produces the following output:
apple
banana
mango
*/
文章转载自: Linq中的TakeWhile和SkipWhile http://www.studyofnet.com/news/872.html
相关文章推荐
- NSTimer相关方法
- Android 屏幕旋转生命周期以及处理方法
- Oracle11g安装完成后给用户解锁
- Oracle11g安装完成后给用户解锁
- Oracle11g安装完成后给用户解锁
- TinkPHP 简单知识摘要
- Oracle11g安装完成后给用户解锁
- mysql中的comment用法
- dhcp服务器详细配置
- 电脑垃圾清理专家专业版 9.98 无限试用版与使用测评
- 螽斯
- Lua学习 2) —— Android与Lua互调
- http传参json格式
- iOS开发UI篇—懒加载
- ubuntu14.04 vim
- 两位16进制加减可逆计数器
- JSON 简介
- 在cmd下输入/g无效
- hiho第六周——01背包(动态规划)
- ubuntu锁屏