java - 如何使用java中的索引remove() ArrayList()中的字符串元素序列?

标签 java string arraylist indexing

我想删除代码中序列字符串元素中的 4 个索引。 我的 ArrayList 包含多个 String 元素:

{MyString,MyString1,MyString2,MyString3,MyString4,...., MyString10}

这是我的代码:

String removedItem = "MyString";

for (int i = 0; i < myArrayList.size(); i++) {  
    if (myArrayList.get(i).equals(removedItem)) {
        myArrayList.remove(i);
        myArrayList.remove(i+1);
        myArrayList.remove(i+2);
        myArrayList.remove(i+3);
    }
}

System.out.println(myArrayList);

我的代码似乎没有按顺序删除前 4 个索引。我做错了什么以及如何解决它?任何帮助将不胜感激!

最佳答案

如果你想删除指定的值和接下来的三个元素。你可以使用这个:

for (int i = 0; i < myArrayList.size(); i++) {  
    if (myArrayList.get(i).equals(removedItem)) {
        myArrayList.remove(i);
        myArrayList.remove(i);
        myArrayList.remove(i);
        myArrayList.remove(i);
    }
}

因为每次删除一个元素时,下一个元素都会向前移动。

关于java - 如何使用java中的索引remove() ArrayList()中的字符串元素序列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60845381/

相关文章:

java - 通过 JDBC 获取 JList 中的数据 - 缺失的链接

java - 如何从来自 api 响应的 json 字符串构造对象列表?

java - Java中的条码图像生成器

java - Android GPS 起初工作,但后来返回空值

java - 使用 replaceAll 删除部分字符串

java - 将十进制/十六进制写入文件,而不是字符串

c - LuaJit FFI 从 C 函数返回字符串到 Lua?

android - 将 String 转换为 Double,不包括部分字符串

python - 对列表的两个连续值执行任何操作

Android 从月份名称创建 ArrayList