c# - 如何从 C# 中的 if 语句中跳出 List<T>.ForEach() 循环

标签 c# for-loop foreach

我想跳过 List<T>.ForEach() 的迭代从 if 中循环陈述。

我有代码:

        instructions.ForEach(delegate(Instruction inst)
        {                
            if (!File.Exists(inst.file))
            {
                continue; // Jump to next iteration
            }

            Console.WriteLine(inst.file);
        });

但是编译器声明没有什么可以跳出的(大概是因为它似乎将 if block 作为封闭 block ?)。

有没有办法做到以上几点?类似于 parentblock.continue;

谢谢

最佳答案

使用return 语句代替continue。请记住,通过使用 ForEach 扩展方法,您正在为每个项目执行一个函数,其主体在 { 和 } 之间指定。通过退出函数,它将继续处理列表中的下一个值。

关于c# - 如何从 C# 中的 if 语句中跳出 List<T>.ForEach() 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11672882/

相关文章:

C++ for循环输出一个数组与多个数组不同的结果

java - 如何使用两个for循环制作空心盒子

c# - 如何将dataGridView的前3列readOnly设置为true

c# - 在行编辑回发后将 gridview 返回到其原始垂直位置

c# - 如何最小化/最大化打开的应用程序

javascript - 我有一个包含数千个带有 URL 属性的项目的数组。如何为数组中的每个项目创建一个按钮,以打开 URL 的 iframe?

powershell - 使用 Start-Job 同时运行多个脚本 block (而不是循环)

php - MySQL 更新和动态多选

c# - foreach 缺少控件,除非嵌套和重复

c# - 接口(interface)还是抽象类?