مصفوفة جافا من ArrayList، ArrayList من مصفوفة

اليوم سنتعلم كيفية إنشاء مصفوفة من ArrayList في جافا. سنتعلم أيضًا كيفية إنشاء ArrayList من عناصر المصفوفة.

مصفوفة ArrayList في جافا

إنشاء مصفوفة من قائمة في جافا ليس معقدًا. فيما يلي برنامج بسيط يُظهر مصفوفة جافا من ArrayList كمثال.

import java.util.ArrayList;
import java.util.List;

public class JavaArrayOfArrayList {

	public static void main(String[] args) {
		List<String> l1 = new ArrayList<>();
		l1.add("1");
		l1.add("2");

		List<String> l2 = new ArrayList<>();
		l2.add("3");
		l2.add("4");
		l2.add("5");

		List<String>[] arrayOfList = new List[2];
		arrayOfList[0] = l1;
		arrayOfList[1] = l2;

		for (int i = 0; i < arrayOfList.length; i++) {
			List<String> l = arrayOfList[i];
			System.out.println(l);
		}

	}

}

لاحظ أننا لا نستطيع استخدام الأنواع العامة عند إنشاء المصفوفة لأن جافا لا تدعم المصفوفة العامة. لذا إذا حاولنا استخدام الكود أدناه، سينتج عنه خطأ في وقت الترجمة بأنه “لا يمكن إنشاء مصفوفة عامة من List“.

List<String>[] arrayOfList = new List<String>[2];

ArrayList من مصفوفة في جافا

يمكننا أيضًا إنشاء مصفوفة عناصرها قائمة. فيما يلي مثال بسيط يُظهر كيفية إنشاء قائمة من عناصر المصفوفة في جافا.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class JavaArrayListOfStringArray {

	public static void main(String[] args) {
		// قائمة من مصفوفات السلاسل
		List list = new ArrayList();
		
		String[] arr1 = { "a", "b", "c" };
		String[] arr2 = { "1", "2", "3", "4" };
		list.add(arr1);
		list.add(arr2);
		// طباعة قائمة من مصفوفات السلاسل في ArrayList
		for (String[] strArr : list) {
			System.out.println(Arrays.toString(strArr));
		}
	}

}

ArrayList جافا من مصفوفة الكائن

إذا كنت غير متأكد من نوع الكائنات في المصفوفة أو ترغب في إنشاء ArrayList من مصفوفات يمكن أن تحمل أنواعًا متعددة، فإنه يمكنك إنشاء ArrayList من مصفوفة كائن. فيما يلي مثال بسيط يوضح كيفية إنشاء ArrayList من مصفوفات كائن في جافا.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class JavaArrayListOfObjectArray {

	public static void main(String[] args) {
		// قائمة من مصفوفات الكائن لتخزين أنواع مختلفة من المصفوفات
		List list = new ArrayList();
		String[] arr1 = { "a", "b", "c" };
		String[] arr2 = { "1", "2", "3", "4" };

		JavaArrayListOfObjectArray aa = new JavaArrayListOfObjectArray();
		JavaArrayListOfObjectArray.A[] arr3 = { aa.new A("AA"), aa.new A("BB") };

		list.add(arr1);
		list.add(arr2);
		list.add(arr3);

		// القائمة تحمل أنواع مختلفة من مصفوفات الكائنات، دعونا نطبعها
		for (Object[] objArr : list) {
			System.out.println(Arrays.toString(objArr));

			// تكرار عبر المصفوفة والقيام بعملية استنادًا إلى نوعها
			for (Object obj : objArr) {

				// استخدام الكلمة الأساسية instanceof للعثور على نوع الكائن في المصفوفة
				if (obj instanceof String) {
					// doSomethingForStringObject();
				} else if (obj instanceof JavaArrayListOfObjectArray.A) {
					// doSomethingForAObject();
				}
			}
		}
	}

	/**
	 * A sample class to use in arraylist of arrays
	 * 
	 * @author pankaj
	 * 
	 */
	public class A {
		private String name;

		public A(String n) {
			this.name = n;
		}

		public String getName() {
			return this.name;
		}

		@Override
		public String toString() {
			return "A.class::"+this.name;
		}
	}
}

عند تنفيذ البرنامج أعلاه، ينتج الإخراج التالي.

[a, b, c]
[1, 2, 3, 4]
[A.class::AA, A.class::BB]

هذا كل شيء بالنسبة لإنشاء مصفوفة من ArrayList و ArrayList من مصفوفة في جافا.

يمكنك التحقق من المزيد من أمثلة جافا الأساسية من مستودعنا في مستودع GitHub.

المرجع: مصفوفات جافا

Source:
https://www.digitalocean.com/community/tutorials/java-array-of-arraylist-of-array