PDA

View Full Version : سوال: تغییر اندازه آرایه در حین اجرا



mehran788
چهارشنبه 02 اسفند 1391, 07:11 صبح
با سلام و خسته نباشید
چطور میشه یک آرایه رو در حین اجرا تغییر اندازه داد؟
ممنون

csharpdoost
چهارشنبه 02 اسفند 1391, 07:22 صبح
اگه منظورت اینه که اولش به ارایه اندازه ندی و هر موقع و هر چقدر خواستی بهش اندازه بدی. برای این کار میتونی ارایه رو اول new کنی با متغیری که بعدا میتونه عوض بشه یعنی مقدارش رو یا از کاربر یا از جای دیگری بدست بیاره.اما اگه میخوای مثلا داخل یه حلقه که در حال خواندن ارایه است طولش رو تغییر بدی بهتره از arreylist استفاده کنی

مهرداد صفا
چهارشنبه 02 اسفند 1391, 09:18 صبح
با سلام.
با استفاده از متود Array.Resizeمیتوانید اندازه آرایه را تغییردهید:

int[] a = new int[3] { 1, 2, 3};
foreach (int number in a)
{
MessageBox.Show(number.ToString());
}
Array.Resize(ref a, 5);
MessageBox.Show("array resized!");
foreach (int number in a)
{
MessageBox.Show(number.ToString());
}


اما استفاده از لیستها راحت تر است.