该do...while循环与其他循环的不同之处在于,它保证至少执行一次。它也称为“测试后循环”结构,因为条件语句是在主循环主体之后执行的。
int i = 0; do { i++; System.out.println(i); } while (i < 100); // 条件在循环内容执行后被检查。
在此示例中,循环将一直运行到100打印数字为止(即使条件为,i < 100而不是i <= 100),因为循环条件是在循环执行后评估的。
在保证至少执行一次的情况下,可以在循环外部声明变量并将其初始化为内部变量。
String theWord; Scanner scan = new Scanner(System.in); do { theWord = scan.nextLine(); } while (!theWord.equals("Bird")); System.out.println(theWord);
在这种情况下,theWord是在循环外部定义的,但是由于可以保证它具有基于其自然流的值,因此theWord将被初始化。