صفت Count
نام دوره: زبان سی شارپ مقدماتی
نویسنده: علی مقدم جاه (مدرس دوره)
پراپرتی Count چیست؟
فرض کنید شما یک مجموعه از کالکشن ArrayList به نام list1 دارید که ۱۰ خانه در آن وجود دارد؛ برای چاپ کردن مقادیر داخل این مجموعه به راحتی میتوانید از حلقه foreach استفاده کنید:
ArrayList list1 = new ArrayList() {15, 16, 18, 17, 19, 20, 27, 28, 25, 24};
foreach(var item in list1)
{
Console.WriteLine(item);
}
خروجی
15
16
18
17
19
20
27
28
25
24
قطعا حرکت کردن روی خانههای یک مجموعه با حقله foreach راحتتر از تمامی حلقههای دیگر است.
اما شما فرض کنید بنا به هر دلیلی مجبور به استفاده از حلقه for شدهاید:
ArrayList list1 = new ArrayList() {15, 16, 18, 17, 19, 20, 27, 28, 25, 24};
for(int i = 0; i < 10; i++)
{
Console.WriteLine(i);
}
خروجی
15
16
18
17
19
20
27
28
25
24
خب در این مثال، چون تعداد خانههای مجموعه list1 بسیار کم بود، درنتیجه به راحتی توانستیم با شمردن آن به عدد ۱۰ برسیم و در نقطه پایان حلقه for قرار دهیم.
اما یه سوال، اگر مجموعه به شکل زیر بود چطور؟!
ArrayList list1 = new ArrayList() {15, 16, 18, 17, 19, 20, 27, 46, 78, 13, 14,
24, 25, 26, 27, 30, 38, 37, 39, 40, 45, 46, 49, 57, 58, 89, 98, 28, 25, 24}, 15,
16, 18, 17, 19, 20, 27, 46, 78, 13, 14, 11, 15, 16, 20, 21, 22, 23, 24, 25, 26,
27, 30, 38, 37,15, 16, 18, 17, 19, 20, 27, 46, 78, 13, 14, 11, 15, 16, 20, 21, 22,
23, 24, 25, 26, 27, 30, 38, 37, 15, 16, 18, 17, 19, 20, 27, 46, 78, 13, 14, 11, 15,
16, 20, 21, 22, 23, 24, 25, 26, 27, 30, 38, 37, 15, 16, 18, 17, 19, 20, 27, 46, 78,
13, 14, 11, 15, 16, 20, 21, 22, 23, 24, 25, 26, 27, 30, 38, 37};
قطعا دیگر شمردن تعداد خانههای مجموعه توسط برنامهنویس کاری منطقی نیست!
در این حالت میتوانید از صفت Count استفاده کنید تا به جای شما، تعداد خانههای مجموعه list1 را شمارش کند:
ArrayList list1 = new ArrayList() {15, 16, 18, 17, 19, 20, 27, 28, 25, 24};
for(int i = 0; i < list1.Count; i++)
{
Console.WriteLine(i);
}
خروجی
15
16
18
17
19
20
27
28
25
24
در این مثال، پراپرتی Count توسط شناسه list1 فراخوانی شده است.
در نتیجه باید پراپرتی Count به سراغ مجموعه list1 رفته و تعداد تمامی خانههای آن مجموعه را پس از شمردن در حافظه، در جای list1.Count مقابل i < list1.Count قرار دهد.
نکته: این صفت برای آرایهها مورد استفاده قرار نمی گیرد! برای استفاده در آرایه باید از صفت Length استفاده شود.
جهت شرکت در دورههای زبان برنامه نویسی سیشارپ، از کد تخفیف heplc30 استفاده کنید.