我认为这是一个相当简单的问题,但我无法弄清楚如何正确地做到这一点。
我有一个空的数组列表。
ArrayList<object> list = new ArrayList<object>();
我有一些想要添加的对象,每个对象都必须在某个位置。但是,它们必须以各种可能的顺序被添加。当我尝试这样做的时候,它没有起作用,我得到一个IndexOutOfBoundsException
。
list.add(1, object1)
list.add(3, object3)
list.add(2, object2)
我试着在ArrayList'中填入
null',然后进行上述操作。这很有效,但我认为这是个可怕的解决方案。是否有其他方法?
我提请你注意ArrayList.add
文档,其中提到它抛出了IndexOutOfBoundsException
--如果索引超出范围(index < 0 || index > size()
)。
在你调用list.add(1, object1)
之前,检查你的列表的size()
。