توجه: پیش نیاز این جلسه آموزشی جلسه پانزدهم - آرایه های یک بعدی در جاوا می باشد.هر چند ما مبحث آموزش آرایه های یک بعدی و آرایه های دوبعدی را باهم ادغام کرده و در قالب یک پی دی اف واحد تحت عنوان جلسه سی و هفتم آموزش جاوا در اختیار شما عزیزان قرار داده ایم.
آرایه بیشتر از یک بعد هم داریم؟
پاسخ مثبت است،بله داریم هر چقدر به تعداد این کروشه باز و بسته اضاف شود به همون تعداد بعدی به آرایه می گویند.
ما بیشتر د ربرنامه نویسی با آرایه یک بعدی و دو بعدی کار داریم!!! البته در مبحث Collections در جاوابا ساختمان داده هایی نظیر List ،ArrayList و... آشنا می شوید که ذخیره و دستکاری داده ها را برای ما ساده تر کرده اند.گفتید دو بعدی؟! یک مثال از دو بعدی برامون میزنی؟!!! بله:
int[][] number = new int[5][4]; |
این شکل پیاده سازی دو بعدی هست که بهش ماتریس هم می گوییم چیزی شبیه به جدول می باشد که ساختارش برای این مثال بصورت تصویر(1) است:
💡 این یک آرایه دو بعدی 5 در 4 (4*5) می باشد، یعنی 5 عدد سطر و 4 عدد ستون دارد.
سطر ها در این آرایه برای درک بهتر با رنگ آبی و ستون ها با رنگ قرمز مشخص کردم. اون رنگ مشکی هم بیخیالش بشید 😊
آرایه دو بعدی در جاوا:
عناصر درون آرایه دو بعدی برخلاف آرایه یک بعدی در یک سطر قرار ندارند! در این نوع آرایه داده ها در سطر و ستون بر اساس ایندکس ( شماره خانه عنصری از آرایه) ذخیره می شوند.چیزی شبیه ماتریس یا جدول. تصویر(1)
سینتکس یا نحوه نوشتن آرایه دو بعدی در جاوا بصورت هایزیر می باشد:
1. روش اول پیاده سازی آرایه دو بعدی در جاوا:
dataType[][] arrayRefVar; |
مثال از روش اول پیاده سازی آرایه دوبعدی در جاوا:
public class Array2D { int[][] arrayRefVar; } |
2. روش دوم پیاده سازی آرایه دو بعدی در جاوا:
dataType [][]arrayRefVar; |
مثال از روش دوم پیاده سازی آرایه دو بعدی در جاوا:
public class Array2D { int [][]arrayRefVar; } |
3. روش سوم پیاده سازی آرایه دو بعدی در جاوا:
dataType arrayRefVar[][]; |
مثال از روش سوم پیاده سازی آرایه دو بعدی در جاوا:
public class Array2D { int arrayRefVar[][]; } |
4. روش چهارم پیاده سازی آرایه دو بعدی در جاوا:
dataType []arrayRefVar[]; |
مثال از روش چهارم پیاده سازی آرایه دو بعدی در جاوا:
package swing_javalike; public class Array2D { int []arrayRefVar[]; } |
مانند آرایه یک بعدی ، برای استفاده از آرایه دو بعدی در جاوا باید از آن نمونه ایجاد کنیم.برای ساخت یک آرایه دو بعدی که تعداد سطر و ستون آن مشخص می باشد بصورت زیر عمل می کنیم ( برای مثال قصد داریم یک آرایه دو بعدی که تعداد سطر آن 4 و تعداد ستون آن 3 و از نوع عدد صحیح int می باشد ایجاد کنیم) :
1. تعیین نوع آرایه، که در اینجا نوع آرایه را int انتخاب می کنیم:
public class Array2D { int } |
2. تعیین نام برای آرایه
public class Array2D { int tabel } |
3. در کنار نام آرایه علامت “[][]” می گذاریم.همان طور که میدانید برای آرایه یک بعدی تنها یک کروشه باز و بسته می کردیم “[]” . تعداد کروشه های باز و بسته مشخص کننده تعداد بعد آرایه می باشد که برای آرایه یک بعدی “[]” و برای آرایه دو بعدی “[][]” و برای آرایه سه بعدی “[][][]” و....
public class Array2D { int tabel[][] } |
4.علامت “=” (مساوی) را بعد از “[][]” می گذاریم:
public class Array2D { int tabel[][]= } |
4.سمت راست مساوی از کلمه کلیدی new استفاده می کنیم:
public class Array2D { } |
5. بعد از کلمه کلیدی new ، دوباره نوع آرایه را تعیین می کنیم:
public class Array2D { int tabel[][]=new int } |
6. در کنار نوع آرایه از دو کروشه باز و بسته “[][]” استفاده می کنیم.
public class Array2D { int tabel[][]=new int[][] |
7. حالا تعداد سطر و ستون آرایه دوبعدی خود را مشخص می کنیم:
public class Array2D { int tabel[][]=new int[4][3] } |
• [] اول تعداد سطر و [] دوم تعداد ستون آرایه دوبعدی ما را تشکیل می دهد.در این مثال آرایه دوبعدی ما از 4 سطر و 3 ستون تشکیل شده است.
8. در پایان علامت ; را آخر آرایه تعریف شده در کنار “[4][3]” می گذاریم. 😊
public class Array2D { int tabel[][] = new int[4][3]; } |
خب اینم از روش تعریف آرایه دو بعدی در جاوا 😊
حالا قصد داریم با روش مقدار دهی بهآرایه دو بعدی آشنا شویم:
فرض کنیم یک آرایه دو بعدی بصورت زیر در برنامه خود تعریف کرده ایم:
public class Array2D { int table[][] = new int[5][4]; public Array2D(){ { } |
برای درک بهتر این آرایه دو بعدی به شکل تصویر(2) توجه کنید:
✔ طبق تصویر(2) آرایه دو بعدی ما با نام table دارای 5 سطر و 4 ستون می باشد. ( تصویر(2) تنها برای درک نحوه قرار گیری عناصر درون ارایه دو بعدی می باشد)
حالا قصد داریم این آرایه را مقداردهی کنیم.برای این کار بصورت زیر عمل می کنیم: قصد داریم در سازنده کلاس، آرایه خود را مقداردهی کنیم.
1. ابتدا نام آرایه را صدا می زنیم:
public class Array2D { int table[][] = new int[5][4]; |
2. بعد از نام آرایه باید تعیین کنیم کدام خانه از آرایه را میخواهیم مقداردهی کنیم، آرایه دوبعدی نیز مثل آرایه یک بعدی از تعدادی از خانه تشکیل شده است.راه دسرسی به خانه های آرایه دوبعدی از طریق ایندکس یا شماره خانه های آن می باشد. ایندکس یک خانه آرایه دوبعدی برابر شماره سطر و شماره ستون آن خانه در آرایه دوبعدی می باشد.مثلا ما قصد داریم خانه 1*2 آرایه دوبعدی را مقدار دهی اولیه کنیم. شماره سطر این آرایه برابر 2 و شماره ستون این آرایه برابر 1 می باشد.برای این کار بصورت زیر عمل می کنیم:
public class Array2D { int table[][] = new int[5][4]; public Array2D(){ } |
💡 در اینجا دو کروشه باز و بسته “[][]” کنار نام آرایه گذاشتیم ، کروشه اول اشاره به شماره سطر که در اینجا 2 و کروشه دوم اشاره به شماره ستون خانه آرایه که در اینجا 1 است دارد این شماره سطر و ستون همان ایندکس خانه مورد نظر در آرایه می باشد.
3. حال بعد از “[2][1]” علامت مساوی گذاشته و مقداری عدد 4 را به خانه مورد نظر در آرایه نسبت می دهیم:
package swing_javalike; public class Array2D { int table[][] = new int[5][4]; public Array2D() { } } |
با این مقدار دهی عدد 4 در خانه از آرایه که شماره سطر آن 2 و شماره ستون آن 1 است قرار میگیرد. تصویر(3)
خب حالا که گام به گام با مقداردهی به خانه های آرایه دو بعدی آشنا شدید برای درک بهتر به مثال زیر توجه کنید:
package swing_javalike; public class Array2D { int arr[][] = new int[3][3]; public Array2D() { } } |
💡 در این مثال یک آرایه دو بعدی 3*3 تعریف کرده ایم و درون سازنده کلاس ، خانه های این آرایه را مقدار دهی اولیه کرده ایم.که این مقادیر بصورت شکل موجود در تصویر(4) در خانه های ارایه دوبعدی ما قرار می گیرند:
• برای درک بهتر دسرسی به خانه های آرایه به شکل زیر توجه کنید:
امیدوارم تا اینجا توانسته باشم مفهوم و روشه پیاده سازی آرایه های دوبعدی را برای شما روشن کنم 😊
مثال: در مثال زیر با روش های تعریف و ایجاد ،مقدار دهی اولیه و چاپ عناصر درون آرایه دوبعدی آشنا می شویم:
class Testarray3{ // printing 2D array } |
خروجی:
1 2 3 |
توضیحات:
• چاپ عناصر درون یک ارایه دوبعدی بصورت یک ماتریس یا جدول شکل می باشد برای درک بهتر سطر ها و ستون هیا آرایه دوبعدی
int arr[][] = { { 1, 2, 3 }, { 2, 4, 5 }, { 4, 4, 5 } }; |
• تعریف و مقداردهی اولیه آرایه دو بعدی
for (int i = 0; i < 3; i++) { } |
• برای چاپ عناصر درون یک آرایه دوبعدی از دو حلقه تو در تو استفاده می کنیم.
..........ادامه این جلسه آموزشی را به صورت پی دی اف و مرتب شده در لینک زیر دانلود کنید:
این جلسه آموزشی را می توانید بصورت کتاب الکترونیکی (PDF شده) در لینک زیر دریافت کنید.
این جلسه آموزشی را بصورت کامل و مرتب شده در لینک زیر دانلود کنید:(در صورت خرابی لینک گزارش دهید)
بستن *نام و نام خانوادگی * پست الکترونیک * متن پیام |
سایت جاواپرو با هدف تولید محتوای آموزشی با کیفیت رایگان در زمینه برنامه نویسی جاوا و اندروید فعالیت خود را در سال 1395 شروع کرد.امیدواریم بتوانیم دامنه گسترده تری از موضوعات پر نیاز در زمینه برنامه نویسی جاوا و اندروید را البته با حمایت شما پوشش دهیم.
دفتر مرکزی:بوشهر-برازجان-خیابان ماحوزی-سه راه اعتصامی
تلفن تماس: 09301904690