语言的循环语句

循环语句一般分为while/for/do-while三种。

  • while是if语句重复执行的优化版,如果没有while,就需要用if和goto组合代替。

  • for循环是条件和变化简单的while语句的优化版。

foreach

foreach为了优化处理集合的对象,减少不必要的index++. 一些语言为了更简单,for语句也可实现foreach功能。

  • PHP/Java/C#均有foreach的身影。

无限循环

for(;;)和while(1)都是无限循环。编译器对于二者的处理可能有差,前者可能仅仅用jmp不断重复,后者可能有test/je指令。当然,优秀的编译器应该会最优化指令。

for循环历史

  • 最早ALGOL 58就有for循环的雏形。

  • Fortran 66引入了FOR语句,Fortran 90引入了DO/WHILE语句。

    • for I : = 0 ( 1 ) N;

break和continue

和switch/case语句类似,循环语句一样除了有break跳出,还增加了continue继续判断条件。对于汇编实现,均是jmp或j*系列跳转,并没有多么深奥。


微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。

我是程序员小迷(致力于C、C++、Java、Kotlin、Android、iOS、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。

欢迎关注。助您在编程路上越走越好!

相关推荐
Lyyaoo.19 分钟前
【JAVA基础面经】JVM的内存模型
java·开发语言·jvm
杨凯凡20 分钟前
【017】泛型与通配符:API 设计里怎么用省心
java·开发语言
Java后端的Ai之路25 分钟前
Text-to-SQL与智能问数完全指南:基本概念、核心原理、Python实战教学及企业项目落地
数据库·python·sql·text-to-sql·智能问数
IT利刃出鞘27 分钟前
Spring工具类--ObjectUtils的使用
java·后端·spring
2301_7826591828 分钟前
如何使用Navicat连接云端MariaDB_白名单与实例配置
jvm·数据库·python
2301_803875617 小时前
PHP 中处理会话数组时的类型错误解析与修复指南
jvm·数据库·python
m0_743623927 小时前
c++如何批量修改文件后缀名_std--filesystem--replace_extension【实战】
jvm·数据库·python
MY_TEUCK7 小时前
Sealos 平台部署实战指南:结合 Cursor 与版本发布流程
java·人工智能·学习·aigc
我爱cope7 小时前
【从0开始学设计模式-10| 装饰模式】
java·开发语言·设计模式
rockey6277 小时前
AScript函数体系详解
c#·.net·script·eval·expression·function·动态脚本