هر گاه بخواهیم یک ارایه بسازیم ولی از تعداد عضوهای آن مطمئن نیستیم ، کافی است تا به روش زیر عمل کنیم.
ابتدا یک لیست با نام دلخواه و با همان نوعی که می خواهیم آرایه ما از همان نوع باشد می سازیم . مثلا می خواهیم آرایه ای از نوع عدد صحیح بسازیم پس باید یک لیست از نوع عدد صحیح به روش زیر بسازیم.
List<int> myInts = new List<int>();
پس از ساختن این لیست می توانیم بدون محدودیت هر تعداد که خواستیم برای آن عضو جدید تعریف کنیم.
شبیه کدهای مقابل :
myInts.Add(5);
myInts.Add(10);
myInts.Add(11);
myInts.Add(51);
myInts.Add(30);
myInts.Add(21);
با کدهای بالا شش عضو به این لیست افزوده شد
اکنون براحتی می توانید به روش زیر این لیست را به یک آرایه با نام دلخواه تبدیل کنید.
var MyArray = myInts.ToArray();
اکنون نیز مانند بالا می توانید با کمک یک فور لوپ تمام اعضاء آرایه جدید را فهرست کنید.
for (int i = 0; i < MyArray.Length; i++)
{
listBox1.Items.Add(MyArray[i]);
}
اعلان یک آرایه :
برای اعلان یک آرایه کافی است تا ابتدا نوع آرایه سپس دو علامت براکت پس از آن نامی دلخواه علامت مساوی کلمه " نیو " و مجددا نوع آرایه و دو علامت براکت که در بینشان تعداد عضوهای آرایه نوشته میشود و در پایان علامت سمی کالن را بنویسید .
int [] num = new int[10] ;
اگر تا اینجای کد را بنویسید آرایه ساخته می شود و بطور پیش فرض بخاطر اینکه آرایه از نوع عدد صحیح می باشد ، هر ده عضو آن با مقدار صفر مقدار دهی می شوند.
اکنون برای مقدار دهی آرایه از روش زیر استفاده می کنیم.
num[0] = 10;
num[1] = 20;
num[2] = 30;
num[3] = 40;
num[4] = 50;
num[5] = 60;
num[6] = 70;
num[7] = 80;
num[8] = 90;
num[9] = 100;
اکنون تمام عضوها به ترتیب با مقدارهای 10 و 20 و 30 و ..... تا 100 مقدار دهی شده اند.
برای اینکه ما تمام اعضاء یک آرایه را دریافت کرده و آنها را در یک لیست باکس بنویسیم می توانیم از یک فور لوپ شبیه آنچه در پایین نوشته استفاده کنیم.
for (int i = 0; i < num.Length ; i++)
{
listBox1.Items.Add(num[i]);
}
آرایه ها : برای تشخیص ایندکس یک عضو از یک آرایه از روش زیر استفاده می کنیم
private void button1_Click(object sender, EventArgs e)
{
int[] Array = {5,8,1,7,4,9,2,3,12,13,18,21};
int Element = 3;
for (int i = 0; i < Array.Length; i++)
{
if (Element == Array[i])
{ label1.Text = i.ToString(); } } }
//----------------------
Output : 7