定义为:
1 | public static bool All<TSource>( this IEnumerable<TSource> source, Func<TSource, bool> predicate); |
如果源序列中的每个元素都通过指定谓词中的测试,或者序列为空,则为 true;否则为 false。
用法举例:
1 |
|
该方法也可用于linq查询的where子句中,例如:
1 |
|
需要特别注意的是如果集合为空,那么不管传入的predicate是什么都将返回true
与any函数的比较
同样的上述查询中,如果想要使用Any()方法查询出同样的结果,则需要使用下述代码:
1 |
|
可见Any()方法主要用于判断某集合里是否有满足条件的元素。
而All()方法用户判断某集合里是否都满足条件。