بعد چند وقت ننوشتن، امروز میخوام در مورد آرایهها در جاوا صحبت کنم باهاتون. قبلا در مورد متغیرهای جاوا صحبت کرده بودیم. آرایه ساختمان داده ایی هستش که می تواند چندین قلم داده همنوع را در آن ذخیره کرد.
خب حالا در مورد مفهوم آرایه صحبت کردیم، بریم سر تعریف آرایه در جاوا. مثال زیر رو ببینید:
package com.soroush; public class Arrays { public static void main(String[] args) { int[] MyArray = new int[20]; } }
خب در اینجا ما یک آرایه به اسم MyArray تعریف کردیم که توی ان میتونیم 20 مقدار از نوع Integer رو نگهداری کنیم. چند موضوع رو باید همیشه در کار با آرایهها یادمون باشه:
- آرایهها همیشه با ۰ شروع میشن. یعنی اگر MyArray ما یک آرایه ۲۰ تایی باشه، دسترسی به متغیرهاش از MyArray[0] الی MyArray[19] هستش.
- آرایهها در جاوا باید حتما قبل از استفاده ازشون، تعدادشون مشخص بشه. یعنی وسط برنامه ما نمیتونیم یه آرایه ۲۰ تایی رو بکنیم ۲۵ تایی در حالی که دیتای قبلی آرایه توش باقی بمونه.
خب مثال زیر رو ببینید:
package com.soroush; public class Arrays { public static void main(String[] args) { int[] MyArray = new int[20]; //روش اول مقدار دهی MyArray[0] = 1; MyArray[1] = 2; MyArray[2] = 3; MyArray[3] = 4; MyArray[4] = 5; MyArray[5] = 6; MyArray[6] = 7; MyArray[7] = 8; MyArray[8] = 9; //روش دوم مقدار دهی int[] MyArray2 = {1,2,3,4,5,6,7,8,9,10,11,12,13}; } }
۲ روش برای مقدار دهی به آرایهها هستش که در بالا میتونید ببینیدشون. روش دوم در هنگام ساخت آرایه مورد استفاده قرار میگیره.
معمولا توی آرایهها ما از حلقهها استفاده میکنیم. مثال زیر رو ببینید:
package com.soroush; public class Arrays { public static void main(String[] args) { int[] MyArray3 = new int[20]; for(int i = 0;i<20;i++){ MyArray3[i] = i*12; } for(int i = 0;i<20;i++){ System.out.println(MyArray3[i]); } } }
مقدار MyArray3.length همیشه تعداد خونههای آرایه رو بر میگردونه برامون. از اون توی حلقهها بسیار استفاده میشه.
یادتون باشه همهی انواع متغیرها رو میتونید آرایه کنید.
کپی کردن یک آرایه در داخل دیگری
خب برای این کار مثال زیر رو ببینید:
package com.soroush; import java.util.Arrays; public class ArraysData { public static void main(String[] args) { int[] MyArray3 = new int[20]; for(int i = 0;i<20;i++){ MyArray3[i] = i*12; } int[] MyArray4 = Arrays.copyOf(MyArray3,MyArray3.length); } }
درون این Arrays انواع و اقسام توابع کار با آرایهها وجود داره، مثل sort,binary sort و … که میتونید ازشون در پروژههاتون استفاده کنید.
مرتب سازی یک آرایه عددی
خب برای این کار میتونیم از کد زیر استفاده کنیم:
public static int[] sortIntArray(int[] array){ int[] sortArray = Arrays.copyOf(array,array.length); boolean flag = true; int temp; while (flag){ flag = false; for (int i = 0; i < sortArray.length-1; i++){ if(sortArray[i] < sortArray[i+1]){ temp = sortArray[i]; sortArray[i] = sortArray[i+1]; sortArray[i+1] = temp; flag = true; } } } return sortArray; }
دیدگاهتان را بنویسید