do..while循环语句
do…while 循环语句与 while 循环语句类似,它们之间的区别是,while 语句先判断条件是否成立再执行循环体,而 do…while 循环语句则先执行一次循环后,再判断条件是否成立。也就是说,do…while 循环语句 “{}” 中的程序段至少要被执行一次。语法如下:
do {
语句序列
}while(条件表达式);
do…while 语句与 while 语句的一个明显区别是,do…while 语句在结尾处多了一个分号。根据 do…while 循环语句的语法特点总结出 do…while 循环语句的执行过程,如图4.12所示。
【例4.6】使用 do…while 语句进行用户登录验证(实例位置:资源包\TM\sl\4\6)
创建 LoginService 类,首先提示用户输入 6 位密码,然后使用 Scanner 扫描器类获取用户输入的密码,最后进入 do…while 语句中进行循环,以判断用户输入的密码是否正确,如果用户输入的密码不是 “931567”,则让用户反复输入,直到输入正确的密码。
import java.util.Scanner; //引入Scanner类
public class LoginService {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); // 创建扫描器,获取控制台输入的值
int password; // 保存用户输入的密码
do {
System.out.println("请输入6位数字密码:"); // 输出提示
password = sc.nextInt(); // 将用户在控制台输入的密码记录下来
} while (931567 != password);// 如果用户输入的密码不是"931567"则继续执行循环
System.out.println("登陆成功"); // 提示循环已结束
sc.close(); // 关闭扫描器
}
}
运行结果如图4.13所示。

Figure 1. 图4.12 do…while循环语句的执行过程

Figure 2. 图4.13 输入正确的密码才会显示“登录成功”