关于if else声明

时间:2016-06-14 22:36:21

标签: php if-statement time

这是代码!

code1:

if(false) {
    //1000 lines of code
}
else {
    //1 line of code
}

code2:

if(false) {
    //1 line of code
}
else {
    //1 line of code
}

上述两个代码的处理时间是多少?还请尝试解释......

1 个答案:

答案 0 :(得分:0)

好吧,这是关于表现的非常好的问题。

简短回答:他们将以相同的速度运行。为什么

编译器在符合您的代码时会将其转换为机械语言,这是RAM中的一堆低级处理器命令

如果条件为假,在if中有一行,编译器会要求处理器跳1行,这将使程序计数器增加1而忽略if块并执行else块代替。看看开销只是增加程序计数器的一个命令。

program counter是用于保存您正在执行的行

的寄存器

并且在带有1000行的if中,只需增加程序计数器1000就可以跳过if块来执行else块。一个操作开销是相同的。

如果条件为真else块将执行,那么即使if也是如此,然后跳转else块。