4
なぜPredicate <T>ではなくFunc <T、bool>なのですか?
これは好奇心の問いにすぎません。 .NET Frameworkクラスライブラリには、たとえば次の2つのメソッドがあります。 public static IQueryable<TSource> Where<TSource>( this IQueryable<TSource> source, Expression<Func<TSource, bool>> predicate ) public static IEnumerable<TSource> Where<TSource>( this IEnumerable<TSource> source, Func<TSource, bool> predicate ) Func<TSource, bool>代わりに使用するのはなぜPredicate<TSource>ですか?以下のように思えるPredicate<TSource>だけで使用されているList<T>とArray<T>、しばらくはFunc<TSource, bool>ほとんどすべてで使用されているQueryableとEnumerableメソッドと拡張メソッドそれに何次第ですか...?