Android Java有没有办法在arraylist中添加特定索引处的一些对象?

Android Java有没有办法在arraylist中添加特定索引处的一些对象?,java,android,arraylist,Java,Android,Arraylist,你好,我有一个带有一些字符串的ArrayList。我希望在特定索引处插入一个字符串,而不丢失该索引上的字符串。我知道如何使用list.add(index,string)但它会用新的字符串替换索引处的字符串 例如,我有一个ArrayList: index 0 => Orange index 1 => Melon index 2 => Apple index 3 => Strawberry index 4 => Pear index 5 => Banana 现在

你好,我有一个带有一些字符串的
ArrayList
。我希望在特定索引处插入一个字符串,而不丢失该索引上的字符串。我知道如何使用
list.add(index,string)
但它会用新的字符串替换索引处的字符串

例如,我有一个ArrayList:

index 0 => Orange
index 1 => Melon
index 2 => Apple
index 3 => Strawberry
index 4 => Pear
index 5 => Banana
现在我想将Cherry添加到索引2中,因此结果应该是:

index 0 => Orange
index 1 => Melon
index 2 => Cherry 
index 3 => Apple
index 4 => Strawberry
index 5 => Pear
index 6 => Banana
有没有一个简单的方法可以做到这一点,因为它让我头疼。

参考:

在此列表中的指定位置插入指定元素。 移动当前处于该位置的元素(如果有)和 右侧的后续元素(将一个元素添加到其索引中)

也应该在android上工作…

add(int-index,E-element)
工作正常:

List<String> list = new ArrayList<String>(Arrays.asList(
                               "Orange", "Melon", "Apple",
                               "Strawberry", "Pear", "Banana"));
System.out.println(list);
list.add(2, "Cherry");
System.out.println(list);

因为您需要附加到现有索引,所以您需要这样做-

list.add(index, string + list.remove(index));
list.remove(index)将返回索引处的元素并将其删除。

请参阅:

在指定位置将指定对象插入此ArrayList。对象将插入到指定位置的任何上一个元素之前。如果位置等于此ArrayList的大小,则会在末尾添加对象

参数:

索引:插入对象的索引

对象:要添加的对象

投掷


IndexOutofBoundsLocation<0 | |>size()时的IndexOutOfBoundsException

是的,我知道此方法,但从该索引中删除了已存在的元素。请阅读此问题的所有内容。在索引处添加会将
index-1
之后的所有元素按1个位置添加。谢谢大家,但我的印象是,该方法的效果正好相反。我不是下选者,但可能是因为OP希望在新索引处添加项目。他们不想将新字符串与该索引处的现有项连接起来,这是您的代码所做的。是的。OP的问题不清楚。在第一部分中,他说他需要在不丢失现有字符串的情况下将字符串附加到索引中。在第二部分中,他似乎需要通过向下推现有索引来添加索引。非常正确。我从上下文中假设OP实际上是“插入”的意思——我编辑了这个问题来反映这一点。
[Orange, Melon, Apple, Strawberry, Pear, Banana]
[Orange, Melon, Cherry, Apple, Strawberry, Pear, Banana]
list.add(index, string + list.remove(index));
void add(int index, E object)