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

  

你可能感兴趣的:(while)