通过任何返回条件的限定,循环会中断 groovy

发布于 2024-10-02 05:47:12 字数 34 浏览 0 评论 0原文

当循环符合 return 语句时是否终止?即使值为空?

Do the loop terminates when it qualifies the return statement? even when value is null?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

神妖 2024-10-09 05:47:12

你的问题太模糊,无法得到任何确定的回答。但是,如果我冒险猜测,我敢打赌您指的是“.each”循环中的控制语句?

如果是这样,简短的回答是:不,return(或break)不会终止循环。唯一的方法是在循环中抛出异常:

try{
    (1..10).each{ n->
        println n
        if (n == 5) throw new Exception()
       }
}        
catch(Exception){}

但是,这完全是令人厌恶的。请改用 for 或 while 循环。

另请参阅:

如果我偏离主题,也许您可​​以发布一些代码来举例说明您的主题?

Your question is too vague to be answered with any kind of certainty. Were I to hazard a guess, however, I'd bet you're referring to control statements within a '.each' loop?

If so, the short answer is: No, return (or break) does not terminate the loop. The only way to do so is via throwing an exception within the loop à la:

try{
    (1..10).each{ n->
        println n
        if (n == 5) throw new Exception()
       }
}        
catch(Exception){}

But, this is a total abomination. Use a for or while loop instead.

See also: returning from closure

If I'm off the mark, perhaps you could post some code exemplifying your topic?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文