PDA

View Full Version : مقاله: ArrayList در فضانام System.Collections



xcomlock
سه شنبه 20 دی 1390, 23:27 عصر
برای استفاده از collections ها باید از فضا نام system.collections استفاده کنیم که یکی از فضانامهای مهم به شمار می آید.
در فضا نام system.collections کلاسهای زیادی می باشد که می توان برای هدف خود از آنها استفاده کرد.

ArrayList
BitArray
Stack
Queue
Comparer
HashTable
SortedList

اما بحث ما در این مقاله در مورد کلاس arraylist می باشد.

Arraylist
Arraylist یکی از مهمترین کلاسهای system.collections می باشد که در واقع می توان گفت نسل بعدی آرایه ها می باشند.
Arraylist ها یک آرایه دینامیک می باشند که در صورت لزوم می توانند اندازه آنها افزایش یابند.

Add
این متد برای اضافه کردن یک عنصر به arraylist می باشد . نحوه استفاده از این متد همراه با مثال در زیر مشاهده می کنید.
ArrayList oArrayList = new ArrayList();
oArrayList.Add("Ali");
oArrayList.Add("Reza");
oArrayList.Add(99);
oArrayList.Add("@");
oArrayList.Add("55.55");
oArrayList.Add(oStack);

Add Range
در این متد می توان به arraylist عنصری از دیگر collections ها اضافه کرد .
Stack oStack = new Stack();
oStack.Push(1);
oStack.Push(2);
oStack.Push(3);
oStack.Push(4);
ArrayList oArrayList = new ArrayList();
oArrayList.Add("Ali");
oArrayList.Add("Reza");
oArrayList.AddRange(oStack);
در این مثال یک کلاس stack از collections به arraylist اضافه شد , که خروجی این مثال به این شکل خواهد شد.

Ali Reza 1 2 3 4

Clear
از این متد برای پاک کردن تمام عناصری که در arraylist ذخیره شده اند استفاده می شود.
ArrayListObject.Clear();

BinarySearch
متد BinarySearch برای پیدا کردن محل عنصر مورد نظر استفاده می شود . با یک مثال بیشتر متوجه خواهید شد.
ArrayList oArrayList = new ArrayList();
oArrayList.Add(1);
oArrayList.Add(3);
oArrayList.Add(5);
oArrayList.Add(7);
int iPos = oArrayList.BinarySearch(3);

Insert
این متد برای اضافه کردن یک عنصر جدید به arraylist استفاده می شود. نحوه استفاده از آن به شکل زیر می باشد.
ArrayList oArrayList = new ArrayList();
oArrayList.Add(1);
oArrayList.Add(3);
oArrayList.Add(4);
oArrayList.Insert(2,2);
خروجی قبل از متد insert :

134
و بعد از متد insert :

1234


InsertRange
این متد مانند متد insert برای اضافه کردن عنصر جدید استفاده می شود ولی در این متد می توان مقدار اضافه شد از نوع یک collection دیگر باشد.به مثال زیر توجه کنید.
ArrayList oArrayList = new ArrayList();
oArrayList.Add(1);
oArrayList.Add(5);
oArrayList.Add(6);
نتیجه :

6 5 1

Stack oStack = new Stack();
oStack.Push(2);
oStack.Push(3);
oStack.Push(4);
oArrayList.InsertRange(2,oStack);
نتیجه :

6 5 4 3 2 1

Remove
این متد برای پاک کردن یک عنصر مورد نظر از arraylist استفاده می شود.
ArrayList oArrayList = new ArrayList();
oArrayList.Add("Ali");
oArrayList.Add("Reza");
oArrayList.Add("Amir");
oArrayList.Remove("Ali");

RemoveAt
این متد مانند remove برای پاک کردن یک عنصر مورد نظر استفاده می شود ولی با این تفاوت که در این متد باید محل عنصری را که می خواهیم پاک شود را وارد می کنیم.
ArrayList oArrayList = new ArrayList();
oArrayList.Add("Ali");
oArrayList.Add("Reza");
oArrayList.Add("Amir");
oArrayList.RemoveAt(1);

RemoveRange
این متد برای پاک کردن یک محدوه از ArrayList می باشد.
ArrayList oArrayList = new ArrayList();
For(int i=1;i<10;i++)
{
oArrayList.Add(i);
}
در این arraylist به اندازه ۱۰ عنصر با مقادیر زیر در آن ذخیره شده است

10 9 8 7 6 5 4 3 2 1

oArrayList.RemoveAt(5,3);
با اجرای این دستور از محل 5 به اندازه 3 عنصر پاک خواهد شد.

10 9 8 4 3 2 1

Sort
متد sort برای مرتب سازی arraylist استفاده می شود . (به صورت صعودی)
oArrayList.Add("B");
oArrayList.Add("A");
oArrayList.Add("Z");
oArrayList.Sort();
خروجی:

A B Z

Reverse
این متد arraylist را به صورت معکوس مرتب سازی می کند.
oArrayList.Add("A");
oArrayList.Add("B");
oArrayList.Add("C");
oArrayList.Reverse();
قبل از اجرای این متد:

A B C
بعد از اجرای این متد:

C B A

Contains
این روش برای بررسی اینکه آیا این عنصر وجود دارد یا نه استفاده می شود و نتیجه را به صورت یک مقدار بولی بازگشت می دهد.
OArrayList.Contains("Ali");

متدهای دیگر که فکر میکنم نیازی به توضیح نداشته باشن.
Capcity
Count
IsFixedSize
IsReadOnly