簡體   English   中英

如何創建二維ArrayList?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM