[英]How to create a 2D ArrayList?
我正在尝试使用Java创建二维数组。 行的大小是已知的,而列的大小是未知的。 这是我的代码,它不起作用。 谁能给我一些想法?
ArrayList<Integer> paths[];
paths = new ArrayList[2];// 2 paths
for (int i=0; i<2; ++i)
paths[i].add(1); // add an element to each path
在添加数组元素之前对其进行初始化。 将初始化放入for
循环中:
@SuppressWarnings("unchecked")
ArrayList<Integer>[] paths = new ArrayList[2];
for (int i=0; i<2; ++i) {
paths[i] = new ArrayList<Integer>();
paths[i].add(1);
}
这样,您可以避免NullPointerException
。
这是一个“ 2d” ArrayList
:
ArrayList<ArrayList<Integer>> paths = new ArrayList<>();
这是Java <1.7的非钻石运算符版本:
ArrayList<ArrayList<Integer>> paths = new ArrayList<ArrayList<Integer>>();
我会推荐这个
ArrayList<ArrayList<Integer>> paths = new ArrayList<ArrayList<Integer>>();
for (int i=0; i<2; ++i)
paths.add(new ArrayList<Integer>());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.