栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

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

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

在您的情况下,无需遍历列表,因为您知道要删除哪个对象。您有几种选择。首先,您可以按索引删除对象(因此,如果您知道,该对象是第二个列表元素):

 a.remove(1);       // indexes are zero-based

然后,您可以删除字符串的 第一次 出现:

 a.remove("acbd");  // removes the first String object that is equal to the         // String represented by this literal

或者,删除具有特定值的所有字符串:

 while(a.remove("acbd")) {}

如果您的集合中有更复杂的对象并想要删除具有特定属性的实例,则情况会有些复杂。因此,不能通过使用

remove
与要删除的对象相等的对象来删除它们。

在这种情况下,我通常使用第二个列表来收集我要删除的所有实例,并在第二遍中将其删除:

 List<MyBean> deleteCandidates = new ArrayList<>(); List<MyBean> myBeans = getThemFromSomewhere(); // Pass 1 - collect delete candidates for (MyBean myBean : myBeans) {    if (shallBeDeleted(myBean)) {       deleteCandidates.add(myBean);    } } // Pass 2 - delete for (MyBean deleteCandidate : deleteCandidates) {    myBeans.remove(deleteCandidate); }


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/486608.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号