创建x ArrayLists

时间:2017-01-09 02:03:28

标签: java arraylist

我使用存储整数的变量类。如果整数是13,我需要创建13个arraylists。知道如何做到这一点吗?

这就是我的while循环:

ArrayList<Integer[]> list + count = new ArrayList<>();

以下内容:

ArrayList<ArrayList<Integer>> myLists = new ArrayList<ArrayList<Integer>>();

for(int i = 0; i < 4; i++) {
ArrayList<Integer> newList = new ArrayList<Integer>();
myLists.add(newList);
}

假设我需要整数9进入第3个数组列表,整数3进入第2个数组列表。我该怎么做?

3 个答案:

答案 0 :(得分:1)

你想要达到什么目标?

您可以创建ArrayLists的ArrayList。如下所示:

A = [1 2 3 5 7; 0.4 0.1 0.2 0.1 0.2];
B = 1:10;
[tf,loc] = ismember(A(1,:), B);
C = zeros(1,10);
C(loc(tf)) = A(2,tf)

通过这种方式,您可以将myLists包含在您创建的所有列表中。

答案 1 :(得分:0)

通过合并变量来生成另一个变量名是不可能的。编译器应该已经告诉过你这个了。您可以使用其他ArrayList

来完成此操作
List<List<Integer[]>> mainList = new ArrayList<List<Integer[]>>();
        for(int i = 0; i  < 13; i++){

            mainList.add(new ArrayList<Integer[]>());
        }

答案 2 :(得分:0)

如果您想通过名称识别每个ArrayList,可以使用Map

Map<String, ArrayList<Integer[]>> listsMap = new HashMap<>();
for(int i = 0; i < 13; i++){
   listsMap.add("list" + i, new ArrayList<>());
}

然后,如果您需要将一个整数添加到特定列表,您可以这样做:

listsMap.get("list3").add(new Integer[]{3});