c# - 删除数组中的当前元素

如何在 foreach 循环中删除数组的当前元素?

我的程序从数据库中获取数据并通过 HTTP 请求将其发送到新数据库。现在我想将一个 JSON 字符串发布到我的新数据库中。如果成功,我想删除我正在使用的当前数组项。像这样。

foreach(var item in array)
{
    bool decide = method.DoSomething();
    if(decide == true)
    {
        //delete current item
    }
}

最佳答案

因为您不能从数组中删除项目并更改它的大小,所以这里是使用第二个集合的循环方法

List<itemClass> keepCollection = new List<itemClass>();

foreach(var item in array)
{
    bool decide = method.DoSomething();
    if(decide == false)
    {
        keepCollection.Add(item);
    }
}

如果您再次需要数组形式,只需调用 ToArray()

var finalResult = keepCollection.ToArray();

https://stackoverflow.com/questions/73690198/

相关文章:

java - @EnableGlobalMethodSecurity 在新的 spring boot

c++ - 使用 enable_if 对类方法进行部分模板特化

user-interface - 愚蠢且令人沮丧的跨浏览器 UI 问题

javascript - 如何迭代两个对象并根据 JS 中的另一个更新一个值?

regex - 使用 awk 只包含以特定值开头的列?

r - 与 R 中的日期相关联的条件累积和

rust - 将闭包指定为返回类型的替代方法?

javascript - 过滤 2 个数组以检查父子是否

c++ - 为什么即使还有弱指针,make_shared 也会调用析构函数?

java - 流迭代不使用最后一个值