gpt4 book ai didi

language-agnostic - 闯入 for 循环

转载 作者:行者123 更新时间:2023-12-04 08:59:39 26 4
gpt4 key购买 nike

假设你有这个代码:

function doSomething($array)
{
for($i = 0; $i < sizeof($array); $i++)
{
if ($array[$i] == "ok")
return true;
}

return false;
}

请注意,我不是在谈论特定于 PHP(这适用于所有语言)或这个特定示例。这是关于中断 for 循环(在这种情况下,返回 true;停止循环)。

据我的一位老师说,这是非常非常糟糕的做法。

打破循环真的是一种未完成的做法吗?

谢谢

最佳答案

中断或从循环返回完全没问题。

你的老师可能指的是经典的一个函数应该只有一个返回点扩展到循环。这背后的基本原理是,您的控制流应始终尽可能简单易懂。这不是一个严格的规则,你必须不假思索地遵守。

在不使用 breakreturn 的情况下重写您的示例:

function doSomething($array)
{
$ret = false;
for($i = 0; $i < sizeof($array) && !$ret; $i++)
{
if ($array[$i] == "ok")
$ret = true;
}

return $ret;
}

阅读和维护很痛苦。你的更简洁。

关于language-agnostic - 闯入 for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5501488/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com