Java 中数组列表的数组
原文:https://www.geeksforgeeks.org/array-of-arraylist-in-java/
我们经常遇到 2D 阵列,其中阵列的大部分是空的。由于空间是一个巨大的问题,我们尝试不同的方法来减少空间。其中一个解决方案是当我们知道数组中每行的长度时,使用锯齿状数组,但是当我们不具体知道每行的长度时,问题就出现了。这里我们使用数组列表,因为长度未知。 下面是一个演示上述概念的 Java 程序。
// Java code to demonstrate the concept of
// array of ArrayList
import java.util.*;
public class Arraylist {
public static void main(String[] args)
{
int n = 5;
// Here al is an array of arraylist having
// n number of rows.The number of columns on
// each row depends on the user.
// al[i].size() will give the size of the
// i'th row
ArrayList<Integer>[] al = new ArrayList[n];
// initializing
for (int i = 0; i < n; i++) {
al[i] = new ArrayList<Integer>();
}
// We can add any number of columns to each
// rows as per our wish
al[0].add(1);
al[0].add(2);
al[1].add(5);
al[2].add(10);
al[2].add(20);
al[2].add(30);
al[3].add(56);
al[4].add(34);
al[4].add(67);
al[4].add(89);
al[4].add(12);
for (int i = 0; i < n; i++) {
for (int j = 0; j < al[i].size(); j++) {
System.out.print(al[i].get(j) + " ");
}
System.out.println();
}
}
}
输出:
1 2
5
10 20 30
56
34 67 89 12
上面的代码工作正常,但是显示了下面的警告。
prog.java:15: warning: [unchecked] unchecked conversion
ArrayList[] al = new ArrayList[n];
^
required: ArrayList[]
found: ArrayList[]
1 warning
警告基本上是由于线下。
ArrayList<Integer>[] al = new ArrayList[n];
如何修复以上警告? 我们不能在没有警告的情况下使用数组列表数组。我们基本上需要使用数组列表的数组列表。
版权属于:月萌API www.moonapi.com,转载请注明出处