我创建了一个循环,其中使用变量来测试循环的当前运行是否是第一个循环。它相当简单:
$firstrun = true;
while(condition){
if($firstrun)
// Do this
else
// Do that
// Change $firstrun to false
}
我只是想知道(主要是出于好奇,因为我觉得这没有真正明显的区别),什么时候我需要改变$firstrun
设置为 false,可以更有效地测试变量是否为true
在将其分配为 false 之前还是在每次运行期间将其重新分配为 false 之前?
Ex:
$firstrun = true;
while(condition){
if($firstrun)
// Do this
else
// Do that
if($firstrun)
$firstrun = false;
}
或者简单地
$firstrun = true;
while(condition){
if($firstrun)
// Do this
else
// Do that
$firstrun = false;
}
附:
我想这也是一个坏例子,因为抛出重新分配是最有效的$firstrun
与原始条件一致,但正如我所说,这是出于好奇,所以我想只是假装由于某种原因这不是一个选择。
附:
当我想到这个想法时,我正在使用 PHP 进行编码,但我猜测该解决方案与语言无关。只是想我会把它扔在那里以防万一它因某种原因而重要。
那么最终,条件测试和变量赋值哪个更快?
以上都不是
$firstrun = true;
while(condition)
{
if($firstrun)
{
$firstrun = false;
}
else
{
}
}
我之所以这么说,是因为你不断地将 false 重新分配给$firstrun
,你应该在第一个循环中执行此操作
condition test vs assignment which is faster?
例如,您已经显示,是相同的(一个执行周期,没有一些昂贵的调用)
updated
我认为条件测试会更慢,因为您可能会在此之后调用一系列后续操作
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)