当前位置: 首页 > 知识库问答 >
问题:

多维arrayList获取ID并从arrayList中删除整个列表

双志强
2023-03-14
class Emp {

    String ID, FName, LName, ASalary, StartDate;

    Emp(String _ID, String _FName, String _LName, String _ASalary, String _StartDate) {
        ID = _ID;
        FName = _FName;
        LName = _LName;
        ASalary = _ASalary;
        StartDate = _StartDate;
    }
}

ArrayList< Emp> Record = new ArrayList< Emp>();


 private void btnRemoveActionPerformed(java.awt.event.ActionEvent evt) {                                          
        String ID;

        ID = IDin.getText();
     
        int firstIndex = Record.indexOf(ID);
        Record.remove(firstIndex);
        Display.setText("remove " + ID + " Indext of " + firstIndex);
}      

它返回-1,因为它在ArrayList中找不到ID,我只需要获取ID号并删除带有该ID号的整个ArrayList

共有1个答案

郎长卿
2023-03-14

您可以简单地使用RemveIF并提供这样的谓词:

id = IDin.getText();
record.removeIf(emp -> emp.getId().equals(id)); //add null check if needed

布尔removeIf(谓词

删除此集合中满足给定谓词的所有元素。迭代期间或谓词引发的错误或运行时异常将转发给调用方。

 类似资料:
  • 问题内容: 我有一堆索引,我想从中删除这些索引中的元素。我无法做一个简单的s 序列,因为每次移除后元素都会移动。我该如何解决? 问题答案: 按降序对索引进行排序,然后将其一一删除。如果这样做,删除将不会影响以后要删除的任何索引。 如何对它们进行排序将取决于您用来存储索引的集合。如果是列表,则可以执行以下操作: 编辑 @aioobe找到了我找不到的助手。除了上述内容,您还可以使用

  • 我有一个假设,它有8个项目A-H,现在我想从中删除存储在int数组中的1,3,5位置项目。我该怎么做。 我正试着和你一起做这件事 但在数组的第一个被删除的项被更改之后,在下一次迭代中它删除了错误的元素或给出异常。

  • 问题内容: 这个问题已经在这里有了答案 : 是什么导致java.lang.ArrayIndexOutOfBoundsException,如何防止它发生? (25个答案) 4年前关闭。 所以我有另一个带有main方法的类,在该类中我调用createNumbers(),createColours(),createBalls()。当我运行程序时,我在numere.remove(nr)处得到一个Index

  • 问题内容: 我有一个具有静态对象ArrayList的ClassA 现在,我要像这样从此列表中删除一个对象 这是用Meteorit类编写的。但是,当我想使用ArrayList中的对象时,它将引发异常。 我使用Iterator从ArrayList中删除对象,但是现在我不知道如何在这种情况下使用它。 问题答案: 这是因为某个线程实际上正在for每个循环中查看此列表,也许您正在尝试在for-each主体中

  • 我有一个程序,它从文件中获取输入,将文件中的每个单词保存为令牌,然后将每个令牌添加到数组列表中。 问题是arrayList出现了例如[“cat”,“dog”,“”,“”,“bird”],我不想在arrayList中出现空格。 总之,我的代码如下: 应该会删除空格,我已经通过从非文件数组列表中删除空格进行了测试。奇怪的是,如果我将其更改为,它将从ArrayList中删除cat。

  • 我有一个hashmap,它包含一个arraylist作为值。我想检查其中一个ArrayList是否包含一个对象,然后从ArrayList中移除该对象。但是,怎么做? 我尝试过使用一些for循环,但是我得到了一个ConcurrentModificationException,并且我无法消除该异常。 我已经试过了: