打破嵌套循环谁能告诉我如何在有嵌套循环的情况下打破主循环?示例*:/*主循环*/for(inty=0;y<100;y+=10){/*子循环*/for(intx=0;x<100;x+=10){if(x==60){//Breakthemainloop}}}*这段代码什么都不做,它只是一个例子,我应该把它放在“Breakmainloop”注释所在的位置?在java中有我可以打破的标签(当我将标签设置为名为“MainLoop”的主循环时,我可以写“breakMainLoop;”并且它将有效),但我可以在这里做什么?谢谢你的建议!去!我不明白这种将goto视为“有害”的持续模因。使用得当是非常强大的,正是如此。使用一个标志来指示终止:for(inty=0;y有些人会因为我建议使用goto语句而找我,但是跳出多个循环是它非常有用(和高效)的地方之一:/*Mainloop*/for(inty=0;y通常最好把它放到一个单独的函数中然后做一个'return'voidloop_de_loop(){for(inty=0;y不知道有没有办法打破C#中的嵌入设置循环,但请允许我提出一个解决方法。您可以将主循环放入一个函数并返回该函数。您可以返回false;表示过早休息并返回true;表示如果重要,循环就完成了。正如评论中所建议的那样,标志可能是最好的方法:booleansomeFlag=true;for(inty=0;i/*Mainloop*/for(inty=0;y没有好的通用答案。“正确的方法”取决于实际问题。最好的方法可能是将外循环放在一个函数中,然后使用return;打破它。可能是x=100;y=100;x=100;y=100;.可以做到=真;.哎呀,甚至可能是一个goto(开玩笑)。不推荐,但您可以使用goto。看到这个。公共类GotoTest1{staticvoidMain(){intx=200,y=4;整数计数=0;字符串[,]数组=新字符串[x,y];//初始化数组:for(inti=0;我不推荐,因为它使流程更难理解。其他选择当然是在内循环中设置一些标志并在外循环中检查它,我打折它很明显,并且假设你无论如何都知道它......?因为,正如你提到的,break命令上没有标签,你可以这样做:/*Mainloop*/boolfFound;for(inty=0;y正如其他人所说,“正确”的答案取决于你正在解决的问题。如果可以,将其分解成更小的块是首选路线。这个模型的东西:objectMainLoop(){objectresult=null;for(inty=0;y在我看来,从一个函数中获取多个返回语句,使用额外的标志,或(颤抖)使用goto在不同程度上是丑陋的。但是,有时其中之一是必要的。编辑:这是一个演示使用此方法返回某种有用的对象,如果使用此实例,您将使用除“Customer”或“IDataAccess”或“bool”或“object”之外的其他内容作为返回类型。我会先使用LINQ收集感兴趣的对象,然后对LINQ查询的结果执行操作。从而去掉嵌套循环,并用循环代替。以上就是C#学习教程:打破嵌套循环分享的全部内容。代表立场,如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
