java - 从数组列表中删除字符串

标签 java arrays arraylist compiler-errors runtime-error

我不断收到此错误:

java.lang.IndexOutOfBoundsException: Index: 3, Size: 3

我试图删除字符串“Meg”,它会编译,但我不断收到此错误。

import java.util.ArrayList;

public class CustomerLister2 {
    public static void main (String[] args) {

        ArrayList<String> name = new ArrayList<String>();

        name.add("Chris");
        name.add("Lois");
        name.add("Meg");
        name.add("Meg");
        name.add("Brain");
        name.add("Peter");
        name.add("Stewie");

        for ( int i = 0;  i < name.size(); i++){
            name.get(i);
            name.remove(i);
            name.set(i,"Meg");
        }

        for(String names: name){
            System.out.println(names);
        }
    }
}

最佳答案

如果您想删除“Meg”,请使用此

import java.util.ArrayList;

public class CustomerLister2 {
    public static void main (String[] args) {

        ArrayList<String> name = new ArrayList<String>();

        name.add("Chris");
        name.add("Lois");
        name.add("Meg");
        name.add("Meg");
        name.add("Brain");
        name.add("Peter");
        name.add("Stewie");


        for ( int i = 0;  i < name.size(); i++){
            String tempName = name.get(i);
            if(tempName.equals("Meg"){
                name.remove(i);
            }
        }

        for(String names: name){
            System.out.println(names);
        }
    }
}

关于java - 从数组列表中删除字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19461161/

相关文章:

java - exoplayer 不玩添加并崩溃了

JQuery inArray 返回 true

java - 将数据插入二维 byte[] 数组

java - 如何通过检查其值从 ArrayList 中删除元素?

java - 在大型数据集中查找唯一条目的最有效方法

java - 使用 Spring Controller 和 jQuery AJAX 进行重定向

java - 为什么 2020 年 3 月 30 日和 2020 年 3 月 1 日之间的差值错误地给出了 28 天而不是 29 天?

java - List.remove() 对于负值表现不同

javascript - 松散类型的 indexOf()?

java - 如何手动打乱数组列表