读书人

这个除去goto还有别的方法吗

发布时间: 2013-03-06 16:20:31 作者: rapoo

这个除了goto还有别的方法吗?
一段程序,在运算过程中如果满足了一定条件,跳回去重新开始执行
{
……
……
lableA:……
……
……
{
……
……
……
if(满足条件){goto lableA;}
……
}
……
……
}
[解决办法]
for()

lableA:……

if(1==1)

//跳出本次循环


[解决办法]
2层 while 或 2层for

[解决办法]

引用:
for的方式好像不行


{
……
……
lableA:……
……
……
{//这层本身就是一个foreach循环
……
……
……
if(满足条件){goto lableA;}//这里加break好像不行
……
}
……
……
}
……

break的上一层加个判断嘛,给个bool值 如果为true 再跳到上一层
[解决办法]
理论上不推荐使用goto语句, 因为goto语句破坏了程序顺序执行的特征, 用两个循环就可以了, 楼上极为的答案都很好.
[解决办法]
该用的时候,应该用!!

读书人网 >C#

热点推荐