متد Contains
نام دوره: زبان سی شارپ مقدماتی
نویسنده: علی مقدم جاه (مدرس دوره)
کاربرد متد Contains چیست؟
متد Contains، وظیفه جستجو در مقادیر داخل خانههای یک مجموعه در تمامی کلاسهای عضو کالکشنهای جنریک و غیر جنریک را بر عهده داشته که در نهایت به عنوان خروجی تنها دو مقدار true یا false را بر میگرداند.
به طور کلی متد Contains بسیار شبیه به متد IndexOf است!
با این تفاوت که متد IndexOf درصورت جستجو موفق، شماره اندیس خانه را برگردانده اما متد Contains درصورت جستجو موفق مقدار true و درصورت جستجوی ناموفق مقدار false را بر میگرداند.
برای درک بهتر این متد، ابتدا یک مجموعه را از نوع ArrayList تعریف کرده و سپس تعدادی خانه برای آن با مقادیر مختلف در نظر میگیریم:
ArrayList list1 = new ArrayList();
list1.Add("Ali");
list1.Add("Sara");
list1.Add("Amir");
list1.Add("Arash");
list1.Add("Nadia");
حال میخواهیم بدانیم که آیا در خانههای داخل مجموعه list1، مقدار “ali” وجود دارد یا نه:
list1.Contains("ali");
این دستور، کار خود را برای جستجو رشته “ali” انجام داده است، ولی پاسخ آن کو؟
برای ذخیره پاسخ، از آنجایی که خروجی آن از نوع بولین است، پس باید یک ظرف از نوع bool برای ذخیره پاسخ ارسالی از سوی متد Contains تعریف کنیم:
bool flag = list1.Contains("ali");
:خروجی
flag = false
علت false بودن مقدار ظرف flag این است که در مقادیر داخل خانههای مجموعه list1، مقدار ali وجود ندارد! بلکه مقدار Ali وجود دارد.
نکته: پس متد Contains به بزرگی و کوچکی حروف حساس است:
bool flag = list1.Contains("Ali");
خروجی
flag = true
جهت شرکت در دورههای زبان برنامه نویسی سیشارپ، از کد تخفیف heplc30 استفاده کنید.