繁体   English   中英

为什么在foreach循环内切换仅执行一次

[英]Why switch inside foreach loop executes only once

在调试时,我有一个条件,其中Component.Attributes包含Count = 3(我的意思是3个元素的列表)。 它是这样的foreach循环内部代码:

foreach(Attributes atrb in Component.Attributes) 
{
    switch (Component.Type)
    {
        case "Combo":
            return validateCombo(atrb);
        case "List":
            return validateList(atrb);
        default:
            return true;
    }
}
return false;

我观察到此foreach循环仅对列表的第一个成员执行。 有人可以让我知道为什么它对其他列表成员不执行(我的意思是计数2和3)吗? 是归还吗? 怎么解决呢?

Return是函数语句的结尾。 到达第一个return语句后,整个函数将终止,因此循环立即结束。

您通常会希望在不同的切换案例之间使用break语句来阻止继续执行直到切换定义结束。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM