打印

【转】火眼金睛:continue&break

[复制链接]
531|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
焚琴煮鹤|  楼主 | 2017-1-6 12:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

  虽然continue和break都是循环辅助手段,可以在进入循环体后,根据循环体内的判断结果进行忽略部分的循环。但是它们的用途是各有千秋。

    break:结束整个循环过程,不再判断执行循环的条件是否成立。能够用于do...while,while,for这三种循环语句,它还可以跟switch语句一起使用。但在PHP中,break 结束当前 for,foreach,while,do-while 或者 switch 结构的执行。

break在switch(开关语句)中在执行一条case后跳出语句的作用。

在while和do...while中,可使程序终止循环。

在for中,与continue不同的是,控制段的更新部分也会被跳过。

通常break语句总是与if语句联在一起。即满足条件时便跳出循环。

嵌套循环里的break语句只是使程序跳出里层的循环,要跳出外层的循环则还需break。

    continue:表示结束本次循环,而不终止整个循环的执行,能够用于do...while,while,for这三种循环语句,不同于break,continue不能和switch语句一起使用,因为switch不是循环语句,continue跳出循环意味着跳出了switch。但是在 php 中 switch 语句被认为是可以使用 continue 的一种循环结构。

在for循环中,for(表达式1;表达式2;表达式3),首先执行表达式1,但是表达式1在整个循环中仅执行一次,接着执行表达式2,如果满足条件,那么执行循环体,如果在循环体中执行了continue语句,那么就跳转到表达式3处执行,即先求更新表达式的值,接下进行下一次循环,执行表达式2,看是否满足条件,即continue语句被执行时,下一个被求值的表达式是循环判断语句,试图再次进行循环。

在while循环中,如果执行了continue语句,那么之后的动作是求循环判断表达式的值。

在do while循环体中,如果执行了continue语句,那么就跳转到表达式处进行下一次的循环判断。


相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

63

主题

106

帖子

3

粉丝