C# 从内部循环的中间断开两个嵌套循环
在C#中,假设有两个嵌套循环(每个循环可以是while或for循环)。 在内环的中间,当条件为真时,我想打破这两个循环,C# 从内部循环的中间断开两个嵌套循环,c#,C#,在C#中,假设有两个嵌套循环(每个循环可以是while或for循环)。 在内环的中间,当条件为真时,我想打破这两个循环, loop1 { ... loop2 { ... (I want to break out of both loops, when some condition is true) ... } ... } 还有比这更优雅的方式吗 loop1 { ... loop2 {
loop1
{
...
loop2
{
...
(I want to break out of both loops, when some condition is true)
...
}
...
}
还有比这更优雅的方式吗
loop1
{
...
loop2
{
...
if (condition)
break
...
}
if (condition)
break
...
}
谢谢。将其放入一个方法中,然后
返回
public void TheLoops()
{
while(true) {
while(true) {
if (condition) {
return;
// or change void to a type and
// return conditionResult;
}
}
}
}
我会用这些循环创建一个函数,并使用
return
,因为如果在循环块之后有更多的代码,调用return会使它们无法执行,这就是为什么我将它们放在一个单独的函数中。这是为数不多的几次被普遍接受的允许使用goto
语句的情况之一。尽管还有其他方法可以解决这个问题problem@Jonesopolis我不知道这是不是真的复制品。一个goto
就可以了,但是它也可以被包装在函数中并返回。这就是我要做的。这不是另一个问题的完全重复。