بسیار خب، پس بیایید **predicates** / **lambdas** رو یک بار دیگه با چند مثال دیگه تمرین کنیم.
ما این **FindAll** رو داریم.
اما یک متد بسیار باحال دیگه هم وجود داره که **Any** نامیده می‌شه.
و متد **Any** از یک **lambda** استفاده می‌کنه تا هر عدد رو در **list** تست کنه و ببینه آیا عدد خاصی در اون وجود داره یا نه.
اوکی، پس بیایید از **list** قبلی خودمون استفاده کنیم.
ما این **list** رو داریم که شامل 10، 15، 3 و الی آخره.
و حالا کاری که می‌تونیم انجام بدیم اینه که جلو بریم و بگیم **numbers.Any**.
پس اینجا می‌تونید ببینید دو **overload** متفاوت وجود داره.
**Overloads** دو تا **method** متفاوت با نام یکسان هستن که تعداد پارامترهای متفاوت یا کلاً پارامترهای متفاوتی دارن.
و می‌تونید ببینید که این یکی از این متد **Any** به یک **predicate** نیاز داره.
و می‌تونید اینجا ببینید که یک **predicate** تابعی برای تست هر عنصر برای یک شرط هست.
اوکی.
پس چطور می‌تونیم این کار رو اینجا انجام بدیم؟
خب، می‌تونیم جلو بریم و همون کاری رو انجام بدیم که قبلاً انجام دادیم.
می‌تونیم فقط بگیم آیا هیچ **x**ی وجود داره که بزرگتر از چیزی باشه.
پس **x** تبدیل می‌شود به **x** بزرگتر از صفر.
پس این اینجا، حالا فرض کنید می‌خوایم ببینیم آیا عددی بالاتر از 20 وجود داره.
پس می‌تونستیم به این شکل جلو بریم و بگیم.
پس حالا این یک **bool** رو **return** می‌کنه.
پس **return** می‌کنه که آیا **true** هست یا نه.
آیا عددی وجود داره که بزرگتر از 20 باشه.
پس کاری که می‌تونیم انجام بدیم اینه که نتیجه رو به این شکل ذخیره کنیم که می‌گیم **bool hasLargeNumber** و ما قراره فقط از این **numbers.Any** استفاده کنیم.
و اینجا داریم یک **lambda expression** رو پاس می‌دیم که می‌تونه به عنوان یک **predicate** استفاده بشه، اوکی؟
پس همه **lambda expressions**، **predicate** نیستن اما **predicates**، **lambda expressions** یا **methods** رو نگه می‌دارن، اوکی.
پس حالا کاری که می‌تونیم انجام بدیم اینه که بگیم اگه **hasLargeNumber**، ما قراره روی کنسول بنویسیم:
"اعداد بزرگ در **list** اعداد وجود دارند"، اوکی.
و در غیر این صورت قراره بگید "هیچ عدد بزرگی در **list** وجود ندارد"، اوکی.
پس بیایید این رو اجرا کنیم و ببینیم آیا هیچ عدد بزرگی داریم یا نه.
و می‌گه "اعداد بزرگ در **list** اعداد وجود دارند".
این به این دلیله که ما گفتیم یک عدد بزرگ هر چیزی بالاتر از 20 هست.
پس اگه بگیم عدد بزرگ هر چیزی بالاتر از 30 هست و دوباره اون رو اجرا کنیم، احتمالاً یک مقدار **true** دریافت نمی‌کنیم.
پس "هیچ عدد بزرگی در **list** وجود ندارد".
این به این دلیله که ما یک 30 یا بالاتر داخل **list** اعداد خودمون نداریم، یا در واقع بالای 30، نه 30 یا بالاتر، بلکه 31 و بالاتر.
بسیار خب.
پس شما رو در ویدیوی بعدی می‌بینم.