Java-Array von ArrayList, ArrayList von Array

Heute werden wir lernen, wie man ein Java-Array von ArrayList erstellt. Wir werden auch lernen, wie man eine ArrayList von Array-Elementen erstellt.

Java-Array von ArrayList

Das Erstellen eines Arrays von Listen in Java ist nicht komplex. Unten ist ein einfaches Programm, das ein Beispiel für ein Java-Array von ArrayList zeigt.

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);
		}

	}

}

Beachten Sie, dass wir Generics nicht verwenden können, während wir das Array erstellen, weil Java kein generisches Array unterstützt. Wenn wir also den folgenden Code verwenden, wird er einen Kompilierungsfehler verursachen, da „Generisches Array von List<String> kann nicht erstellt werden“.

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

Java-ArrayList von Array

Wir können auch ein Array erstellen, dessen Elemente eine Liste sind. Hier ist ein einfaches Beispiel, wie man eine Liste von Array-Elementen in Java erstellt.

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

public class JavaArrayListOfStringArray {

	public static void main(String[] args) {
		// Liste von String-Arrays
		List list = new ArrayList();
		
		String[] arr1 = { "a", "b", "c" };
		String[] arr2 = { "1", "2", "3", "4" };
		list.add(arr1);
		list.add(arr2);
		// Ausgabe der Liste von String-Arrays in der ArrayList
		for (String[] strArr : list) {
			System.out.println(Arrays.toString(strArr));
		}
	}

}

Java ArrayList von Objekt-Array

Wenn Sie sich nicht sicher sind über den Typ der Objekte im Array oder wenn Sie eine ArrayList von Arrays erstellen möchten, die mehrere Typen aufnehmen kann, können Sie eine ArrayList von einem Objekt-Array erstellen. Hier ist ein einfaches Beispiel, das zeigt, wie man in Java eine ArrayList von Objekt-Arrays erstellt.

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

public class JavaArrayListOfObjectArray {

	public static void main(String[] args) {
		// Liste von Objekt-Arrays, um verschiedene Arten von Arrays zu halten
		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);

		// Liste hält verschiedene Arten von Objekt-Arrays, lassen Sie uns sie ausdrucken
		for (Object[] objArr : list) {
			System.out.println(Arrays.toString(objArr));

			// Iterieren über das Array und Operationen basierend auf seinem Typ durchführen
			for (Object obj : objArr) {

				// Verwenden des Schlüsselworts "instanceof", um den Objekttyp im Array zu finden
				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;
		}
	}
}

Wenn wir das obige Programm ausführen, ergibt sich folgende Ausgabe.

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

Das ist alles für die Erstellung eines Arrays von ArrayList und einer ArrayList von Arrays in Java.

Sie können mehr Core-Java-Beispiele in unserem GitHub Repository überprüfen.

Referenz: Java Arrays

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