gpt4 book ai didi

java - 如何在java中删除字符串列表中的元素?

转载 作者:行者123 更新时间:2023-12-02 11:25:30 25 4
gpt4 key购买 nike

正如你所看到的,我想从 SplitedIgrediants 列表中删除或删除等于我的成分 ID 的成分,我尝试过删除或删除,但出现错误。那么我该如何从我的 JAVA 列表中删除这个成分 elemant。

        String ingredientid = request.getParameter("id");
DbHandler dbsplt = new DbHandler();
for (String ingrediant : SplitedIngrediants) {
if (ingrediant.equals(ingredientid)) {
//HERE REMOVE THE ingredient from SplitedIngrediants list
}

最佳答案

在迭代 Collection 时,您无法从 Collection 中删除元素(您将得到一些 ConcurrentModificationException),除非您手动声明 iterator 并使用 iterator.remove ().

示例:

List<Integer> list = new ArrayList<Integer>();

list.add(3);
list.add(4);
list.add(5);

Iterator<Integer> it = list.iterator();
Integer current;
while (it.hasNext()) {
current = it.next();
if(current.equals(4)) {
it.remove();
}
}

输出:

[3, 5]

其背后的原因是“foreach”构造在内部创建了一个迭代器。迭代器的目的是确保可迭代的每个元素都被访问一次。因此,如果您在不使用迭代器方法的情况下从可迭代对象中添加/删除元素,迭代器将无法再完成其任务。

第二个选项:在列表上迭代时,创建要删除的项目列表,并在迭代后删除它们。

关于java - 如何在java中删除字符串列表中的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49668278/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com