Java 如何删除数组列表中的元素

ArrayList.remove(int index) 方法从 ArrayList 中删除元素。

  • ArrayList.remove(E element) - 删除指定索引处的元素。
  • ArrayList.remove(E element) - 按值移除元素。
  • ArrayList.removeIf(Predicate p) - 按指定值删除所有元素。

Java根据索引删除ArrayList中的元素

public class ArrayListExample 
{
    public static void main(String[] args) 
    {
        ArrayList<String> namesList = new ArrayList<String>(Arrays.asList( "JackLi", "BobRobert", "Lucie") );

        System.out.println(namesList);	//list size is 3

        //Add element at 1 index
        namesList.remove(1);

        System.out.println(namesList);	//list size is 2
    }
}

输出:

[JackLi, BobRobert, Lucie]
[JackLi, Lucie]
www. On IT Road .com

Java根据值删除ArrayList中的元素

删除ArrayList中第一次出现的某个值的元素:

public class ArrayListExample 
{
    public static void main(String[] args) 
    {
        ArrayList<String> namesList = new ArrayList<String>(Arrays.asList( "JackLi", "BobRobert", "Lucie", "JackLi") );

        System.out.println(namesList);

        namesList.remove("JackLi");

        System.out.println(namesList);
    }
}

输出:

[JackLi, BobRobert, Lucie, JackLi]
[BobRobert, Lucie, JackLi]

删除ArrayList中某个值的所有元素:

使用 List.removeIf() 的删除某个值的多个元素。

public class ArrayListExample 
{
    public static void main(String[] args) 
    {
        ArrayList<String> namesList = new ArrayList<String>(Arrays.asList( "JackLi", "BobRobert", "Lucie", "JackLi") );

        System.out.println(namesList);

        namesList.removeIf( name -> name.equals("JackLi"));

        System.out.println(namesList);
    }
}

输出:

[JackLi, BobRobert, Lucie, JackLi]
[BobRobert, Lucie]
日期:2020-09-17 00:09:26 来源:oir作者:oir