<分区>
这是我目前用来跳出双循环并继续执行 DoStuff() 的方法:
foreach (var enemyUnit in nearbyEnemyUnits) {
var skip = false;
foreach (var ownUnit in ownUnits) {
if (ownUnit.EngagedTargetTag == enemyUnit.tag) {
skip = true;
break;
}
}
if (skip) continue;
DoStuff(enemyUnit);
}
整个“定义一个临时 bool 变量来检查跳过”对我来说似乎很老套。在像 Go 这样的语言中,我可以使用标签来跳出循环,甚至使内部循环成为 clojure 的一部分。在 C# 中执行此操作的最佳方法是什么?
我已经像上面的例子一样做了很长时间,觉得一定有更好的方法 - 在这一点上几乎不好意思问。
谢谢