Linq 中的TakeWhile 和 SkipWhile

这两个概念容易搞混 理解了一番后 在这里写下便于记忆

 

 

SkipWhile 可以理解为如果条件满足  就一直跳过   知道不满足后 就取剩下的所有元素(后面的不会再判断)

TakeWhile 可以理解为如果条件满足  就一直取值   直到不满足后 就丢掉剩下的所有元素(后面的不会再判断)

 

int[] intAry = { 2, 4, 5, 8, 9, 11, 10, 20, 15, 45, 78, 80 };

var query = intAry.TakeWhile(num => num % 2 == 0);
var query1 = intAry.SkipWhile(num => num % 2 == 0);


//query: 2 4
//query1:5, 8, 9, 11, 10, 20, 15, 45, 78, 80

  

posted @ 2015-03-28 13:52  嘭嘭的心跳  阅读(306)  评论(2编辑  收藏  举报