Jeff Mosawy
- مقدمه
تا کنون با خود مفهوم آرایه به حد مناسبی آشنا شدهاید و تقریباً با نحوه استفاده از آن و کاربردهایش خو گرفتید. آرایه در واقع خانههایی از حافظه هستند که در کنار یکدیگر چیده شدهاند تا یک مقدار معینی را در خود ذخیره کنند.
اگر دقت کرده باشید، آرایههایی که تا کنون برای شما توضیح دادیم، تنها یک سطر از خانههای حافظه بودند. اما ممکن هست شما سطر و ستونی را در حافظه بخواید؛ اینجاست که مبحث آرایههای چند بعدی مطرح خواهد شد.
- آرایههای چندبعدی
چیزی که تا کنون برای تعریف آرایهها داشتیم، مشابه شکل زیر بود:
int[] array = new int[5];
که در واقع، ۵ خانه از حافظه را به شکل سطری و پشت سر هم رزرو میکند. به جدول زیر نگاه کنید؛ متوجه سطری بودن یک آرایه میشوید؛ بدین شکل که در هر Position (محل) از حافظه که مختص این آرایه هست، مقداری ذخیره شده است.

حال فرض کنید که بخواهیم که در یک آرایه، به جای سطر(ها)، همزمان هم سطر داشته باشیم و هم ستون؛ در واقع یک آرایهی دو بعدی میخواهیم که به ازای هر یک خانه از سطرها، چندین ستون داشته باشد. به جدول زیر دقت کنید.

برای اینکه یک آرایه دو بعدی در سیشارپ پیاده سازی کنیم، از دستور (Syntax) زیر استفاده میکنیم:
int [ , ] arrayTimes;
سپس بایستی آن را new کنید که برای مثال بدین شکل آن را new میکنیم:
arrayTimes = new int[5, 3];
به دو رقم ۵ و ۳ دقت کنید؛ رقتم اول، محل سطرها هست و رقم دوم، ستونهای موجود برای هر یک سطر میباشد.
استفاده از یک آرایه دو بعدی، هر چند بعضی وقتها واقعاً یک نیاز است، اما خوب، از لحاظ بهینه بودن در بعضی مواقع دچار تردید خواهید شد؛ چرا که برای دسترسی به عناصر آن، میبایست از دو حلقه تو در تو استفاده کنید!
کدهای زیر را برای یک button تعریف کنید:

و با اجرای فرم خود و کلیک بر روی Button، چنین چیزی را خواهید داشت:

توجه کنید که مبحث آرایههای چند بعدی، تنها به دو بعد مختص نیست؛ شما میتوانید به همین شکل، آرایههای سه بعدی (مکعبی) و بیشتر نیز ایجاد کنید!
جهت دریافت این بخش آموزشی بصورت یک فایل PDF، اینجا را کلیک کنید.
