【问题标题】:Error inserting code after a break [closed]中断后插入代码时出错[关闭]
【发布时间】:2015-03-20 19:45:02
【问题描述】:

在第二个 if 序列中断后给我错误。

int value;
value=someMethod();
foreach(List<GameObject>lista in tilesOrganizadosPorColuna)
{
    bool found=false; 
      //DoSomething(); 
    if(value==1)
    {  
    //if value=1 do just first iteration.
    break; 
   }
}

if(!found)
//DoOtherThhink();
}

正确的做法是什么? (我想停止 foreach 循环而不是 if)谢谢。我试过谷歌,但那是我找到的例子。 (如果内部中断会停止 foreach 而不仅仅是 if)。

【问题讨论】:

  • 错误信息是什么?
  • DoSomething() 中的错误也是?
  • 仔细看看你的代码。if语句中的第二个}在哪里。请清理代码并正确格式化。谷歌不会帮你调试你需要的使用调试器单步执行现有代码.. 还有你在哪里使用 lista...?? int value; value=...; foreach(List&lt;GameObject&gt;lista in tilesOrganizadosPorColuna){ bool finded=false; 请显示所有完整和相关的代码.. value = ... 没有人有任何好处.. 还有发现的用途。
  • second if sequence 你没有在那一秒中显示任何代码if 甚至告诉我们错误是从什么开始的。您希望我们如何提供帮助?
  • 我这里写错了,但是在代码中还可以。

标签: c# for-loop foreach


【解决方案1】:

没有缩进使这很难阅读,但我认为您是打算这样做的:

bool found=false; 
int value;
value=...;

foreach(List<GameObject>lista in tilesOrganizadosPorColuna)
{
    if(value==1)
    {   
        found=true;
        break; 
    }
}

if(!found)
{
    //DoSomething()
}

您缺少几个括号。我认为你的 IDE 应该已经警告你了。

我担心你的代码没有多大意义,因为你没有对你正在迭代的东西做任何事情,所以found将只取决于value被初始化为什么.

【讨论】:

  • 好点。我忘记了 C# 是这样工作的。编辑答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多