لیست و آرایه ها دو روش برای ذخیره داده ها در جاوا هستند که اغلب از آنها استفاده می کنید. در پروژههایی که نیاز به ذخیره دادهها بدون هیچ نوع مدیریت فایل دارید، فهرست و آرایهها به شما امکان میدهند دادهها را در طول اجرای برنامه خود ذخیره کنید. ما در طول این آموزش از Class ArrayList استفاده خواهیم کرد که رابط List را در جاوا به جای یکدیگر پیاده سازی می کند.
تفاوت بین لیست و آرایه
فهرست کنید | آرایه |
---|---|
اندازه یک لیست قابل تغییر است | اندازه یک آرایه را نمی توان تغییر داد |
شما نمی توانید انواع اولیه را در لیست ذخیره کنید | می توانید انواع اولیه را در آرایه ذخیره کنید |
می توانید از Generics با لیست استفاده کنید | شما نمی توانید از Generics با Array استفاده کنید |
حافظه بیشتری مصرف می کند | حافظه کمتری مصرف می کند |
تبدیل لیست به آرایه با تابع کتابخانه
لیست دارای یک متد toArray() است که مستقیماً محتویات هر لیست را به یک آرایه تبدیل می کند و در عین حال مکان متن را در آرایه همانطور که در لیست اصلی بود حفظ می کند. در اینجا الگوریتم/مراحل تبدیل لیست به آرایه در جاوا با استفاده از این تابع کتابخانه داخلی وجود دارد.- یک ArrayList را راه اندازی کنید.
- عناصر را از طریق روش list.add(data_type) به لیست اضافه کنید .
- یک آرایه با اندازه فهرست ایجاد کنید.
- با استفاده از نام متغیر آرایه ایجاد شده در مرحله 3 به عنوان آرگومان، لیست را به آرایه تبدیل کنید.
- محتویات آرایه را چاپ کنید.
import java.util.ArrayList;
public class convertListToArray {
public static void main(String[] args) {
//Converting List to Array With Library Function
//Declaration of Array List
ArrayList<String> sampleList = new ArrayList<String>();
//Adding Elements to Array List
sampleList.add("California");
sampleList.add("Texas");
sampleList.add("Illinois");
sampleList.add("Massachusetts");
sampleList.add("Florida");
sampleList.add("Virginia");
sampleList.add("Colorado");
//Printing the Array List
System.out.println("Elements of List: " + sampleList);
//Declaring Array with Equal Size to the List
String[]arr = new String [sampleList.size()];
//Converting List to Array
sampleList.toArray(arr);
//Printing the Array
System.out.print("Elements of Array: ");
for (int i = 0 ; i < arr.length ; i++){
System.out.print(arr[i] + " ");
}
}
}
تبدیل لیست به آرایه بدون عملکرد کتابخانه
گاهی اوقات، ممکن است نیاز به تبدیل لیست به یک آرایه بدون استفاده از توابع داخلی وجود داشته باشد. مشکل موجود ممکن است از محدودیتهای خاصی از نظر عملکردهای کتابخانه استفاده کند. این نیاز برای دانشآموزان برنامهنویسی رایج است که تشویق میشوند بدون توابع کتابخانهای کار کنند تا به آنها کمک کند تا قبل از اجرای این توابع، عملکرد درونی این توابع را بیاموزند. در چنین مواردی می توانید از مراحل زیر برای تبدیل لیست به آرایه در جاوا بدون هیچ تابع کتابخانه ای استفاده کنید.- یک ArrayList را راه اندازی کنید.
- عناصر را از طریق روش list.add(data_type) به لیست اضافه کنید .
- یک آرایه با اندازه فهرست ایجاد کنید.
- یک حلقه for ایجاد کنید که از طریق هر عنصر ArrayList تکرار می شود و آن را از طریق تابع list.get(index) به آرایه[index] ارسال می کند .
- محتویات آرایه را چاپ کنید تا نشان دهید در واقع در حال تبدیل لیست به آرایه هستید.
import java.util.ArrayList;
public class converListToArray2 {
public static void main(String[] args) {
//Converting List to Array Without Library Functions
//Declaration of Array List
ArrayList<String> sampleList = new ArrayList<String>();
//Adding Elements to Array List
sampleList.add("California");
sampleList.add("Texas");
sampleList.add("Illinois");
sampleList.add("Massachusetts");
sampleList.add("Florida");
sampleList.add("Virginia");
sampleList.add("Colorado");
//Printing the Array List
System.out.println("Elements of List: " + sampleList);
//Declaring Array with Equal Size to the List
String[]arr = new String [sampleList.size()];
//Converting to Array
for (int i = 0 ; i < arr.length ; i++){
arr[i] = sampleList.get(i);
}
//Printing the Array
System.out.print("Elements of Array: ");
for (int i = 0 ; i < arr.length ; i++){
System.out.print(arr[i] + " ");
}
}
}
به طور مشابه، اگر نمیخواهید چگونه یک آرایه را به فهرست تبدیل کنید، میتوانید این کار را با استفاده از متد داخلی () Array.asList یا تکرار در میان آرایه و ذخیره مقادیر در هر شاخص در فهرست انجام دهید.
GO TO FULL VERSION