Java 创建x阵列列表

Java 创建x阵列列表,java,arraylist,Java,Arraylist,我使用一个存储整数的变量类。如果整数是13,我需要创建13个ArrayList。你知道我该怎么做吗 这是我的while循环中的内容: ArrayList<Integer[]> list + count = new ArrayList<>(); ArrayList list+count=new ArrayList(); 以下是: ArrayList<ArrayList<Integer>> myLists = new ArrayList<Ar

我使用一个存储整数的变量类。如果整数是13,我需要创建13个ArrayList。你知道我该怎么做吗

这是我的while循环中的内容:

ArrayList<Integer[]> list + count = new ArrayList<>();
ArrayList 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);
}
ArrayList mylist=new ArrayList();
对于(int i=0;i<4;i++){
ArrayList newList=新的ArrayList();
添加(newList);
}

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

你想实现什么

您可以创建ArrayList的ArrayList。比如:

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

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

这样,您将拥有包含您创建的所有列表的MyList。

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

List<List<Integer[]>> mainList = new ArrayList<List<Integer[]>>();
        for(int i = 0; i  < 13; i++){

            mainList.add(new ArrayList<Integer[]>());
        }
List mainList=new ArrayList();
对于(int i=0;i<13;i++){
添加(新的ArrayList());
}

如果要通过名称识别每个
阵列列表
,可以使用
映射

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

通过在作业的左侧放置
+
符号,您试图完成什么?这是不合法的。你是在发明自己的语法,并希望编译器能弄明白吗?我正试图获得如上所述的多个数组列表。我认为+符号会使数组列表名为(list1,list2..list13)。您可以创建
ArrayList
ArrayList[]
)的数组或
ArrayList
ArrayList
)的
ArrayList
)。我不知道什么是
t
。您可以通过说
new ArrayList[13]
来创建一个包含13个
ArrayLists
的数组,但是您必须在循环中创建每个
ArrayList
,因为这将是一个空数组。您不能在Java中动态创建变量名。如果需要n个对象,可以创建数组、
ArrayList
或其他数据结构。不要试图创建大量变量,比如现在我需要将整数3添加到第三个ArrayList中。我该怎么做?在初始化
newList
之后,您可以立即执行:
newList.add(I+1)
您如何知道哪个ArrayList?比如我怎么知道哪个ArrayList是newList?我不确定你想要实现什么,但是你知道哪个列表是哪个列表,因为你创建它们的顺序。因此,第一个ArrayList将在
MyList
中通过执行类似于
MyList.get(0)
的操作来访问,如果您希望MyList中第一个ArrayList中的第一个元素,可以执行
MyList.get(0).get(0)
listsMap.get("list3").add(new Integer[]{3});