我认为这是一个相当简单的问题,但我不知道如何正确地做到这一点。
我有一个空的数组列表:
ArrayList<object> list = new ArrayList<object>();
我有一些对象,我想在其中添加对象,每个对象都必须位于特定位置。然而,有必要将它们添加到每个可能的顺序中。当我尝试这个时,它不起作用,我得到一个 IndexOutOfBoundsException
:
list.add(1, object1)
list.add(3, object3)
list.add(2, object2)
我尝试过的是用 ArrayList
null
然后执行上述操作。它有效,但我认为这是一个可怕的解决方案。还有另一种方法吗?
原文由 J. Maes 发布,翻译遵循 CC BY-SA 4.0 许可协议
你可以这样做:
将 object2 添加到位置 2 后,它会将 object3 移动到位置 3。
如果您希望 object3 始终位于 position3,我建议您使用 HashMap,其中 position 作为键,object 作为值。