عملگرهای تقسیم بندی Take و TakeWhile – آموزش LINQ

  • شنبه ۲۲ آبان ۱۴۰۰
  • بازدید ۶۰۳ نفر

تصویر linq-partitioning-operators-take-takewhile_11120 عملگرهای تقسیم بندی Take و TakeWhile - آموزش LINQ

عملگرهای تقسیم بندی Take و TakeWhile

در این بخش از آموزش LINQ عملگر تقسیم بندی Take و TakeWhileرا بررسی خواهیم کرد. این عملگر مجموعه را به دو بخش تقسیم کرده و یکی از آن ها را باز می گرداند.

عملگر Take

عمگلر Take برای گرفتن بخشی از یک مجموعه از ابتدا تا اندازه مشخص شده استفاده می شود. برای درک بهتر به مثال زیر توجه کنید:

خروجی مثال:

در مثال فوق ما با استفاده از عملگر Take دو عنصر اول مجموعه strList را انتخاب کرده و در newList ذخیره کردیم.

عملگر TakeWhile

عملگر TakeWhile از ابتدای مجموعه تا اندازه مشخص شده شروع می کند و تا زمانی که یک عنصر شرط مشخص شده را برآورده نکنند یا به اندازه مشخص شده برسد، عناصر را انتخاب و باز میگرداند. اگر اولین عنصر شرط را برآورده نکند یک مجموعه خالی باز می گرداند.

این متد دو overload دارد که اولی یک ورودی از نوع Func<TSource, bool> می گیرد و دومی هم یک ورودی از نوع Func<TSource, int, bool> می گیرد. همانطور که مشاهده می کنید overload دوم یک ورودی دیگر نیز دارد که همان اندیس عنصر جاری است.

برای درک بهتر نحوه عملکرد این عملگر به مثال زیر توجه کنید:

خروجی مثال:

در مثال فوق متد TakeWhile فقط اولین عنصر را انتخاب می کند زیرا عنصر دوم شرط مشخص شده را برآورده نمی کند. در مثال زیر می توانید نحوه استفاده از overload دوم این متد را مشاهده کنید:

خروجی مثال:

 

توجه! متدهای فوق در سینتکس کوئری زبان سی شارپ پشتیبانی نمی شود.

ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است