火眼金睛:continue&break
2016-07-09 20:53
197 查看
虽然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语句,那么就跳转到表达式处进行下一次的循环判断。
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语句,那么就跳转到表达式处进行下一次的循环判断。
相关文章推荐
- UESTC 842 天下归晋(树状数组)
- UESTC 841 休生伤杜景死惊开(树状数组)
- UESTC 838 母仪天下(树状数组)
- Parquet与ORC:高性能列式存储格式
- Android UI布局优化
- easyui datagrid 小结
- POJ1417 True Liars (并查集+背包)
- LeetCode - 63. Unique Paths II
- 使用UE4实现HTC Vive设备的简单操作
- UITableview禁止cell点击选中
- Dynamics CRM 2016 Refresh Issue
- 扩展 easyui 控件系列:为datagrid 增加过滤行
- hdu 4740 The Donkey of Gui Zhou dfs 搜索 解题报告
- There is no getter for property named 'depart' in 'class com.xuezhixin.mls.web.model.Major'
- String,StringBuilder,StringBuffer效率比较
- Build Opus Codec for iOS
- ligerui设置页签项标题setHeader方法的使用
- druid数据库密码加密
- UIView 动画
- Android系统移植与调试之------->build.prop文件详细赏析