Array-of-ArrayList

Array of ArrayList, ArrayList of Array trong Java

Hôm nay chúng ta sẽ học cách tạo một mảng ArrayList trong Java. Chúng ta cũng sẽ học cách tạo ArrayList gồm các phần tử mảng.

LUYỆN THI CHỨNG CHỈ OCA

Array của ArrayList trong Java

mảng danh sách mảng trong java, mảng danh sách trong java

Tạo mảng của ArrayList trong java không phức tạp. Dưới đây là một chương trình đơn giản hiển thị ví dụ về mảng của ArrayList trong java.

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

	}

}Code language: JavaScript (javascript)

Lưu ý rằng chúng ta không thể sử dụng generic trong khi tạo mảng vì java không hỗ trợ mảng chung. Vì vậy, nếu chúng ta cố gắng sử dụng mã bên dưới, nó sẽ tạo ra lỗi thời gian biên dịch là “Cannot create a generic array of List<String>”.

List<String>[] arrayOfList = new List<String>[2];
Code language: JavaScript (javascript)

ArrayList của Array trong Java

Chúng ta cũng có thể tạo một mảng có các phần tử là một danh sách. Dưới đây là một ví dụ đơn giản cho thấy cách tạo danh sách các phần tử mảng trong java.

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

public class JavaArrayListOfStringArray {

	public static void main(String[] args) {
		// List of String arrays
		List<String[]> list = new ArrayList<String[]>();
		
		String[] arr1 = { "a", "b", "c" };
		String[] arr2 = { "1", "2", "3", "4" };
		list.add(arr1);
		list.add(arr2);
		// printing list of String arrays in the ArrayList
		for (String[] strArr : list) {
			System.out.println(Arrays.toString(strArr));
		}
	}

}

ArrayList of Object Array trong Java

Nếu bạn không chắc chắn về loại đối tượng trong mảng hoặc bạn muốn tạo ArrayList của mảng có thể chứa nhiều loại, thì bạn có thể tạo ArrayList của một mảng đối tượng.

Ví dụ

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

public class JavaArrayListOfObjectArray {

	public static void main(String[] args) {
		// list of Object arrays to hold different types of array
		List<Object[]> list = new ArrayList<Object[]>();
		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);

		// list holds different types of Object arrays, let's print them
		for (Object[] objArr : list) {
			System.out.println(Arrays.toString(objArr));

			// iterating over the array and doing operation based on it's type
			for (Object obj : objArr) {

				// using instanceof keyword to find the Object type in the array
				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;
		}
	}
}Code language: JavaScript (javascript)

Khi chúng ta thực hiện chương trình trên, nó sẽ tạo ra kết quả sau.


[a, b, c]
[1, 2, 3, 4]
[A.class::AA, A.class::BB]Code language: JSON / JSON with Comments (json)

Trên đây là một số kiến thức về Array và ArrayList trong Java.

Happy learning!!!

HỌC JAVA CORE~

Bài viết liên quan

Leave a Reply

Your email address will not be published.