1.反向循环

Java 有另一种while循环——do-while循环。它与普通while循环非常相似,也只包含两部分:“条件”和“循环体”。只要条件是,循环体就会一遍又一遍地执行true。一般来说,do-while循环看起来像这样:

do
   statement;
while (condition);

或者

do
{
   block of statements
}
while (condition);

对于一个while循环来说,执行的顺序是:条件循环体条件循环体条件循环体,...

但是对于一个do-while循环,它略有不同:循环体条件循环体条件循环体,......

事实上,while循环和do-while循环之间的唯一区别是循环体至少执行一次循环do-while


2.使用do-while循环的好处

do-while基本上,循环和循环之间的唯一区别while是循环do-while至少执行一次。

通常,do-while如果循环体尚未执行,则在检查循环条件没有意义时使用循环。例如,如果在循环体中执行某些计算,然后在条件中使用。

例子:

程序从键盘读取行,直到exit输入单词

尽管 做的时候
String s;
while (true)
{
   s = console.nextLine();
   if (s.equals("exit"))
      break;
}
String s;
do
{
   s = console.nextLine();
}
while (!s.equals("exit"));

循环中的 and 语句的工作break方式与循环中的相同。continuedo-whilewhile


3. 比较do-while循环:Java 与 Pascal

再一次,Pascal 有一个do-while循环的模拟,但它被称为repeat-until循环。此外,它与循环略有不同do-while。在repeat-until循环中,条件指示何时退出循环而不是何时继续循环。

例子:

帕斯卡 爪哇
 
Repeat
   ReadLn(s);
Until s = 'exit';
 
String s;
do {
   s = console.nextLine();
}
while ( !s.equals("exit") );

与 Java 相比,Pascal 表示这一点的方式非常漂亮。我们必须从 Pascal 的例子开始,否则你会笑的。