جستجو در آرایه در سی شارپ
اغلب شما نیاز دارید که عنصر(ها) را در یک آرایه بر اساس منطقی در سی شارپ جستجو کنید. از متدهای ()Array.Find یا ()Array.FindAll یا ()Array.FindLast برای جستجوی عناصری که با شرایط مشخص شده مطابقت دارند استفاده کنید.
()Array.Find
متد ()Array.Find عنصری را جستجو می کند که با شرایط تعیین شده مطابقت داشته باشد و با استفاده از predicate، اولین رخداد را در کل آرایه برمی گرداند.
مطابق سینتکس، پارامتر اول یک آرایه تک بعدی برای جستجو است و پارامتر دوم گزاره predicate است که می تواند یک عبارت لامبدا (lambda expression) باشد. اولین عنصری را که شرایط تعریف شده توسط عبارت predicate را برآورده می کند، برمی گرداند. در غیر این صورت، مقدار پیش فرض را برای نوع T برمی گرداند.
مثال زیر اولین عنصری را که با رشته "Bill" مطابقت دارد پیدا می کند.
مثال زیر اولین عنصری را که با "B" شروع می شود، برمی گرداند.
مثال زیر اولین عنصری را که طول آن پنج یا بیشتر است باز می گرداند.
توجه داشته باشید که متد ()Array.Find فقط اولین رخداد و نه همه عناصر منطبق را برمی گرداند. از متد ()Array.FindAll برای بازیابی تمام عناصر منطبق استفاده کنید.
()Array.FindAll
متد ()Array.FindAll تمام عناصری را که با شرایط مشخص شده مطابقت دارند برمی گرداند.
مطابق سینتکس، پارامتر اول یک آرایه تک بعدی برای جستجو است و پارامتر دوم گزاره predicate است که می تواند یک عبارت لامبدا باشد. در این حالت تمام عناصری را که شرایط تعریف شده توسط عبارت predicate را برآورده می کند، برگردانده می شوند.
مثال زیر همه عناصر منطبق با"Bill" یا "bill" را پیدا می کند.
مثال زیر تمام عناصری که با B شروع می شوند را پیدا می کند.
مثال زیر تمام عناصری که طول آنها پنج یا بیشتر است را پیدا می کند.
()Array.FindLast
متد ()Array.Find اولین عنصری را که با شرط مطابقت دارد بر می گرداند. متد ()Array.FindLast آخرین عنصری را که با شرایط مشخص شده در یک آرایه مطابقت دارد بر می گرداند.
مطابق سینتکس، پارامتر اول یک آرایه تک بعدی برای جستجو است و پارامتر دوم گزاره predicate است که می تواند یک عبارت لامبدا باشد. این آخرین عنصری را که شرایط تعریف شده توسط عبارت predicate را برآورده می کند، برمی گرداند. اگر یافت نشد، مقدار پیش فرض را برای نوع T برمی گرداند.
مثال زیر آخرین عنصری را پیدا می کند که با "Bill" مطابقت دارد.
مثال زیر آخرین عنصری را که با "B" شروع می شود، برمی گرداند.
بنابراین، متد مناسب را بر اساس نیاز خود برای جستجوی یک عنصر در یک آرایه در سی شارپ انتخاب کنید.