Cześć,
mam pytanie dotyczące używania wyrażeń Lambda razem z LINQ, a w zasadzie chodzi mi o podpowiedzi z visuala:
Wyjaśni mi ktoś o co chodzi z Func<Student, bool> predicate
? Dlaczego nie jest to Predicate<Student>
? Chodzi tylko o to żeby pokazać, że Func
zwraca bool
? Przecież jest wiadomym, że Predicate
zwraca true
lub false
.
- Rejestracja:około 9 lat
- Ostatnio:prawie 4 lata
- Postów:143
0
- Rejestracja:ponad 9 lat
- Ostatnio:prawie 5 lat
- Lokalizacja:Warszawa
- Postów:33
0
Pewnie dlatego, że funkcja Where jest przeciążona i pobiera wtedy delegacje Func<Student, int, bool> czego nie moglibyśmy zrobić za pomocą delegacji Predicate<Student>.

somekind
Można przecież zrobić jedno przeciążenie z Func, a drugie z Predicate.

- Rejestracja:około 17 lat
- Ostatnio:5 dni
- Lokalizacja:Wrocław
0
duzy napisał(a):
Wyjaśni mi ktoś o co chodzi z
Func<Student, bool> predicate
? Dlaczego nie jest toPredicate<Student>
? Chodzi tylko o to żeby pokazać, żeFunc
zwracabool
? Przecież jest wiadomym, żePredicate
zwracatrue
lubfalse
.
Predicate
to staroć, a Func
nowa rzecz dodana do .NET razem z LINQ. Wszystkie metody z LINQ korzytają z Funców, kwestia spójności.
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.