假设我有一个大小为n的对象的ArrayList.现在我想在特定位置插入另一个对象,假设在索引位置k(大于0且小于n)并且我希望在索引位置k处和之后的其他对象向前移动一个索引位置.那么有没有办法直接在Java中这样做.实际上我想在添加新对象时保持列表排序.
Clo*_*ble 139
要在特定索引处将值插入ArrayList,请使用:
public void add(int index, E element)
Run Code Online (Sandbox Code Playgroud)
此方法将移动列表的后续元素.但是你无法保证List会保持排序状态,因为你插入的新对象可能会根据排序顺序位于错误的位置.
要替换指定位置的元素,请使用:
public E set(int index, E element)
Run Code Online (Sandbox Code Playgroud)
此方法使用指定的元素替换列表中指定位置的元素,并返回先前在指定位置的元素.
Jal*_*tre 61
这是在特定索引处插入的简单arraylist示例
ArrayList<Integer> str=new ArrayList<Integer>();
str.add(0);
str.add(1);
str.add(2);
str.add(3);
//Result = [0, 1, 2, 3]
str.add(1, 11);
str.add(2, 12);
//Result = [0, 11, 12, 1, 2, 3]
Run Code Online (Sandbox Code Playgroud)