从循环次数角度分析

  • do…while 循环至少执行一次循环体语句
  • for 和 while 循环先循环条件语句是否成立,然后决定是否执行循环体,至少执行零次循环体语句

从循环变量的生命周期角度分析

  • for 循环的循环变量在 for() 中声明的,在循环语句结束后,不可以被访问;
  • while 和 do…while 循环的循环变量因为在外面声明的,所以 while 和 do…while 结束后可以被继续使用的

如何选择

  • 遍历有明显的循环次数(范围)的需求,选择 for 循环
  • 遍历没有明显的循环次数(范围)的需求,循环 while 循环
  • 如果循环体语句块至少执行一次,可以考虑使用 do…while 循环
  • 本质上:三种循环之间是可以互相转换的,都能实现循环的功能

三种循环结构都具有四要素

  1. 循环变量的初始化表达式
  2. 循环条件
  3. 循环变量的修改的迭代表达式
  4. 循环体语句块