تعد القائمة والمصفوفات طريقتين لتخزين البيانات في Java والتي ستستخدمها كثيرًا. في المشاريع التي تحتاج فيها إلى تخزين البيانات دون أي نوع من معالجة الملفات، تتيح لك القائمة والمصفوفات تخزين البيانات طوال فترة تنفيذ البرنامج. سنستخدم Class ArrayList الذي يقوم بتنفيذ List Interface في Java بالتبادل خلال هذا البرنامج التعليمي.
الفرق بين القائمة والمصفوفة
قائمة | مجموعة مصفوفة |
---|---|
يمكن تغيير حجم القائمة | لا يمكن تغيير حجم المصفوفة |
لا يمكنك تخزين الأنواع البدائية في القائمة | يمكنك تخزين الأنواع البدائية في Array |
يمكنك استخدام الأدوية العامة مع القائمة | لا يمكنك استخدام الأدوية العامة مع Array |
يستهلك المزيد من الذاكرة | يستهلك ذاكرة أقل |
تحويل القائمة إلى صفيف باستخدام وظيفة المكتبة
تحتوي القائمة على طريقة toArray() التي تقوم بتحويل محتويات أي قائمة مباشرة إلى مصفوفة مع الاحتفاظ بموضع النص في المصفوفة كما كان في القائمة الأصلية. فيما يلي الخوارزمية/الخطوات لتحويل القائمة إلى صفيف في Java باستخدام وظيفة المكتبة المضمنة هذه.- تهيئة قائمة 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] + " ");
}
}
}
تحويل القائمة إلى صفيف بدون وظيفة المكتبة
في بعض الأحيان، قد تكون هناك حاجة لتحويل القائمة إلى مصفوفة دون استخدام الوظائف المضمنة. قد تستخدم المشكلة المطروحة قيودًا معينة فيما يتعلق بوظائف المكتبة. يعد هذا المطلب شائعًا لطلاب البرمجة الذين يتم تشجيعهم على العمل بدون وظائف المكتبة لمساعدتهم على تعلم الأعمال الداخلية لهذه الوظائف قبل تنفيذها. في مثل هذه الحالات، يمكنك استخدام الخطوات التالية لتحويل قائمة إلى مصفوفة في Java دون أي وظيفة مكتبة.- تهيئة قائمة ArrayList.
- أضف عناصر إلى القائمة من خلال طريقة list.add(data_type) .
- قم بإنشاء مصفوفة بنفس حجم القائمة.
- قم بإنشاء حلقة for التي ستتكرر عبر كل عنصر في ArrayList وتمريرها إلى Array[index] من خلال وظيفة list.get(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