List در سی شارپ

در این بخش از آموزش سی شارپ، List و ویژگی های آن، نحوه ایجاد و دسترسی به لیست با استفاده از LINQ، درج و حذف عناصر از لیست و در انتها ویژگی ها و متدهای آن توضیح داده می شود.

List در سی شارپ

List در سی شارپ

<List<T مجموعه ای از اشیاء است که می توان از طریق ایندکس و متدهایی برای مرتب سازی، جستجو و اصلاح list به آن دسترسی پیدا کرد. <List<T این نسخه عمومی (generic) از ArrayList است که در فضای نام System.Collections.Generic قرار می گیرد.

خصوصیات و ویژگی های <List<T :

1- <List<T معادل ArrayList است که <IList<T را پیاده سازی می کند.

2- <List<T در فضای نام System.Collections.Generic قرار می گیرد.

3- <List<T می تواند حاوی عناصری از نوع مشخص باشد. <List<T چک کردن نوع زمان کامپایل را فراهم می کند و boxing-unboxing را انجام نمی دهد زیرا generic است.

4- عناصر را می توان با استفاده از متدهای ()Add()، AddRange یا سینتکس collection-initializer اضافه کرد.

5- به عناصر می توان با استفاده از یک نمایه به عنوان مثال myList[0] دسترسی داشت. ایندکس ها از صفر شروع می شوند.

6- <List<T سریعتر است و کمتر از ArrayList خطا دارد.

ایجاد یک List در سی شارپ

<List<T یک مجموعه generic است، بنابراین باید یک نوع پارامتر برای نوع داده ای که می تواند ذخیره کند مشخص کنید. مثال زیر نحوه ایجاد لیست و افزودن عناصر را نشان می دهد.

ایجاد لیست در زبان سی شارپ

خروجی قطعه کد بالا به صورت زیر می باشد.

خصوصیات و ویژگی های لیست در زبان سی شارپ

در مثال بالا، ()<List<int> primeNumbers = new List<int لیستی از نوع int ایجاد می کند. به همین ترتیب، cities و bigCities لیست از نوع رشته ای هستند. سپس می توانید عناصر را با استفاده از متد ()Add یا دستور collection-initializer به لیست اضافه کنید.

همچنین می توانید عناصر کلاس های custom را با استفاده از سینتکس collection-initializer اضافه کنید. آنچه که در ادامه می بینید اشیاء کلاس Student را به <List<Student اضافه می کند.

List in C#

اضافه کردن آرایه در List

از متد ()AddRange برای اضافه کردن تمام عناصر یک آرایه یا هر مجموعه دیگری به List استفاده کنید.

امضای ()AddRange عبارت است از : void AddRange(IEnumerable<T> collection)

اضافه کردن آرایه در List

خروجی قطعه کد بالا به صورت زیر می باشد.

ایجاد لیست در سی شارپ

دسترسی به عناصر List در سی شارپ

به یک لیست می توان از طریق index ، حلقه for/foreach و با استفاده از پرس و جوهای LINQ دسترسی یافت. index های یک لیست از صفر شروع می شوند. برای دسترسی به آیتم های خاص لیست، یک ایندکس را در براکت قرار دهید، مانند همان کاری که در آرایه انجام می دهید. از حلقه foreach یا for برای تکرار مجموعه <List<T استفاده کنید.

دسترسی به لیست در سی شارپ

خروجی قطعه کد بالا به صورت زیر می باشد.

لیست در سی شارپ

دسترسی به List با استفاده از LINQ

<List<T یک interface با نام IEnumerable را پیاده سازی می کند. بنابراین، می توانیم لیستی را با استفاده از سینتکس کویری LINQ یا سینتکس متد جستجو کنیم، همانطور که در زیر نشان داده شده است.

دسترسی به List  با استفاده از  LINQ

خروجی قطعه کد بالا به صورت زیر می باشد.

دسترسی به عناصر لیست در سی شارپ

درج عناصر در List

با استفاده از متد ()Insert می توانید یک عنصر را در مجموعه <List<T در ایندکس مشخص شده درج کنید.

امضای ()Insert عبارت است: void Insert(int index, T item)

درج عناصر در List

خروجی قطعه کد بالا به صورت زیر می باشد.

درج عناصر در لیست< br />

حذف عناصر از List

از متد ()Remove برای حذف اولین رخداد عنصر مشخص شده در مجموعه <List<T استفاده کنید. از متد ()RemoveAt برای حذف یک عنصر از ایندکس مشخص شده استفاده کنید. اگر هیچ عنصری در ایندکس مشخص شده وجود نداشته باشد، ArgumentOutOfRangeException رد می شود.

امضای ()Remove عبارت است از : bool Remove(T item)

امضای ()RemoveAt عبارت است از : void RemoveAt(int index)

حذف عناصر از لیست

خروجی قطعه کد بالا به صورت زیر می باشد.

حذف عناصر از لیست در سی شارپ

بررسی عناصر موجود در List

از متد ()Contains برای تعیین اینکه آیا یک عنصر در <List<T وجود دارد یا خیر استفاده کنید.

بررسی عناصر موجود در  لیست

خروجی قطعه کد بالا به صورت زیر می باشد.

List in C#

ویژگی های کلاس <List<T

1- Items

عنصر را در ایندکس مشخص شده دریافت یا تنظیم می کند.

2- Count

تعداد کل عناصر موجود در <List<T را برمی گرداند.

متدهای کلاس <List<T

1- Add

یک عنصر را به انتهای یک <List<T اضافه می کند.

2- AddRange

عناصر مجموعه مشخص شده را به انتهای یک <List<T اضافه می کند.

3- BinarySearch

عنصر را جستجو می کند و ایندکس عنصر را بر می گرداند.

4- Clear

تمام عناصر را از <List<T حذف می کند.

5- Contains

بررسی می کند که آیا عنصر مشخص شده در یک List<T> وجود دارد یا خیر.

6- Find

اولین عنصر را بر اساس تابع موقعیت مشخص شده پیدا می کند.

7- Foreach

از طریق <List<T تکرار می شود.

8- Insert

عنصری را در ایندکس مشخص شده در List<T> درج می کند.

9- InsertRange

عناصر مجموعه دیگری را در ایندکس مشخص شده درج می کند.

10- Remove

اولین رخداد عنصر مشخص شده را حذف می کند.

11- RemoveAt

عنصر را در ایندکس مشخص شده حذف می کند.

12- RemoveRange

تمام عناصری را که با تابع predicate ارائه شده مطابقت دارند حذف می کند.

13- Sort

همه عناصر را مرتب می کند.

14- TrimExcess

ظرفیت را با تعداد واقعی عناصر ست می کند.

15- TrueForAll

تعیین می کند که آیا هر عنصر در <List<T با شرایط تعریف شده با موقعیت تعیین شده مطابقت دارد یا خیر.

List در سی شارپ List Methods List Properties درج و حذف عناصر از List

مقالات این دسته بندی