今天我们将学习如何创建一个Java Array 的 ArrayList,我们还将学习如何创建一个 ArrayList 的 Array 元素。
Java Array 或 ArrayList
Creating array of list in java is not complex. Below is a simple program showing java Array of ArrayList example.
1import java.util.ArrayList;
2import java.util.List;
3
4public class JavaArrayOfArrayList {
5
6 public static void main(String[] args) {
7 List<String> l1 = new ArrayList<>();
8 l1.add("1");
9 l1.add("2");
10
11 List<String> l2 = new ArrayList<>();
12 l2.add("3");
13 l2.add("4");
14 l2.add("5");
15
16 List<String>[] arrayOfList = new List[2];
17 arrayOfList[0] = l1;
18 arrayOfList[1] = l2;
19
20 for (int i = 0; i < arrayOfList.length; i++) {
21 List<String> l = arrayOfList[i];
22 System.out.println(l);
23 }
24
25 }
26
27}
请注意,在创建数组时我们不能使用通用元素,因为java不支持通用数组,所以如果我们尝试使用下面的代码,它会产生编译时间错误,如无法创建列表<字符串>的通用数组
。
1List<String>[] arrayOfList = new List<String>[2];
关于Java Array的评论
我们还可以创建一个数组,其元素是列表.以下是一个简单的示例,显示如何在java中创建一个列表的数组元素。
1import java.util.ArrayList;
2import java.util.Arrays;
3import java.util.List;
4
5public class JavaArrayListOfStringArray {
6
7 public static void main(String[] args) {
8 // List of String arrays
9 List<String[]> list = new ArrayList<String[]>();
10
11 String[] arr1 = { "a", "b", "c" };
12 String[] arr2 = { "1", "2", "3", "4" };
13 list.add(arr1);
14 list.add(arr2);
15 // printing list of String arrays in the ArrayList
16 for (String[] strArr : list) {
17 System.out.println(Arrays.toString(strArr));
18 }
19 }
20
21}
Java 对象数列的列表
如果您不确定数组中的对象类型,或者想要创建可容纳多个类型的数组的 ArrayList,则可以创建一个对象数组的 ArrayList。
1import java.util.ArrayList;
2import java.util.Arrays;
3import java.util.List;
4
5public class JavaArrayListOfObjectArray {
6
7 public static void main(String[] args) {
8 // list of Object arrays to hold different types of array
9 List<Object[]> list = new ArrayList<Object[]>();
10 String[] arr1 = { "a", "b", "c" };
11 String[] arr2 = { "1", "2", "3", "4" };
12
13 JavaArrayListOfObjectArray aa = new JavaArrayListOfObjectArray();
14 JavaArrayListOfObjectArray.A[] arr3 = { aa.new A("AA"), aa.new A("BB") };
15
16 list.add(arr1);
17 list.add(arr2);
18 list.add(arr3);
19
20 // list holds different types of Object arrays, let's print them
21 for (Object[] objArr : list) {
22 System.out.println(Arrays.toString(objArr));
23
24 // iterating over the array and doing operation based on it's type
25 for (Object obj : objArr) {
26
27 // using instanceof keyword to find the Object type in the array
28 if (obj instanceof String) {
29 // doSomethingForStringObject();
30 } else if (obj instanceof JavaArrayListOfObjectArray.A) {
31 // doSomethingForAObject();
32 }
33 }
34 }
35 }
36
37 /**
38 * A sample class to use in arraylist of arrays
39 *
40 * @author pankaj
41 *
42 */
43 public class A {
44 private String name;
45
46 public A(String n) {
47 this.name = n;
48 }
49
50 public String getName() {
51 return this.name;
52 }
53
54 @Override
55 public String toString() {
56 return "A.class::"+this.name;
57 }
58 }
59}
当我们执行上述程序时,它会产生以下输出。
1[a, b, c]
2[1, 2, 3, 4]
3[A.class::AA, A.class::BB]
这就是在Java中创建一个ArrayList和ArrayList的全部。
您可以从我们的 GitHub 存储库中查找更多的核心 Java 示例。
引用: Java Arrays