你如何创建一个整数ArrayList?
我试图用Java创建一个Arraylists数组。 我已通过以下方式声明:
ArrayList[][][] arrayQ = new ArrayList[90][13][18]; for (int i = 0; i < 90; i++) { for (int j = 0; j < 13; j++) { for (int k = 0; k < 18; k++) { arrayQ[i][j][k] = new ArrayList(); } } }
但是,在while循环中添加会引发错误(我正在使用的IDE不会给我一个非常好的错误消息)。
创建整数ArrayList的正确方法是什么?
Java Collections只能保存对象。 int
是原始数据类型,例如,不能保存在ArrayList
中。 您需要使用Integer 。
这是一个完整的例子:
ArrayList[] foo = new ArrayList[3]; foo[0] = new ArrayList (); foo[1] = new ArrayList (); foo[2] = new ArrayList (); foo[0].add(123); foo[0].add(23); foo[1].add(163); foo[1].add(23789); foo[2].add(3); foo[2].add(2); for (ArrayList mylist: foo) { for (int bar : mylist) { println(bar); } }
约斯基和克里斯蒂安是正确的。 将new ArrayList
更改为new ArrayList
,你应该没问题。
如果可能的话,我建议使用Eclipse作为IDE。 它提供(通常)非常具体,详细且通常有用的错误消息,以帮助您调试代码。
问题是ArrayList
需要Objects
– 您不能使用原始类型。
你需要编写arrayQ[i][j][k] = new ArrayList
。
看起来你正在混合非generics和通用ArrayLists
。 您的ArrayList
3D数组使用非generics,但您尝试分配通用ArrayList
。 尝试切换其中一个以匹配另一个。