C#在List遍历的时候删除项


    /// <summary>
    /// 当你在遍历的过程中删除某个对象的时候,这时被删除的对象之后的所有对象都会往前移动一位。
    /// 如果想正确的遍历整个list就需要让i从0开始重新遍历。
    /// 我这里的i=-1是因为当我们进行下一次循环的时候i++,所有刚好下次循环的时候是用0开始。
    /// 缺点:因为每次删除对象都嘚从新遍历,所有增加了代码执行的时间。
    /// </summary>
    private void Test()
    {
        for(int i=lists.Count-1;i>=0;i--)
        {
            if(lists[i]==1)
            {
                lists.Remove(lists[i]);
                break;
            } 
        }
    }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM