开发者社区> 华章计算机> 正文

《Java 7程序设计入门经典》一3.12 do-while循环

简介: 本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第3章,第3.12节,作者 (美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
+关注继续查看

3.12 do-while循环

最后一种Java循环是do-while循环。与在循环开始测试循环条件的for循环和while循环不同,do-while循环在每次循环结束时测试条件。这意味着,do-while循环总是至少执行一次。do-while循环的一般形式为:
image

尽管在只出现一条语句时可以不使用花括号,当它们常用来提供do-while结构的可读性,防止其与while语句混淆。只要条件表达式为真,do-while循环就不断迭代。
下面程序演示了do-while循环,直到用户输入字母q时循环结束。
image
image

注意,do-while循环的循环体提示键盘输入,然后获得输入的键值。在条件表达式中,测试输入的字符与字符q是否相等。如果按键不是q,重复循环。由于在循环底部测试条件,因此循环体会至少执行一次,保证提示用户按键。
使用do-while循环,可以进一步改进本章早些时候提到的猜谜程序。这次,程序不断循环,直到猜到正确字母。
image

下面是示例的运行结果:
image
image

注意,程序中还有一个有趣的事情。在程序中有两个do-while循环。第一个循环直到用户猜对字符才停止,其操作和含义很明了。第二个循环需要一些解释,现将其摘录如下:
image

正如前面解释过的,控制台输入是行缓冲的。必须在字符发送前按回车键。按回车键会生成一个回车符和一个换行符(即新行)序列。这些字符会附加在输入缓冲区中。另外,如果在按回车键前输入的字符多于一个,它们将也会存储在输入缓冲区中。上面的那个循环通过不断读取输入来丢弃多余的字符,直到到达行尾。如果不丢弃那些字符,它们也就会送至程序。这不是希望看到的。(如果想查看这样的现象,可以试图移除内层的do-while循环。)在学习到更多的Java知识后,第11章会介绍更多处理控制台输入的高级方法。但是,使用read()方法可以让人对Java的输入/输出系统的操作基础有所了解。它同时也是Java循环的又一个例子。
image
image
image
image
image
image

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《Java 7程序设计入门经典》一2.14 运算符的优先级
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.14节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1239 0
《Java 7程序设计入门经典》一2.13 使用强制类型转换
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.13节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1086 0
《Java 7程序设计入门经典》一2.12 赋值中的类型转换
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.12节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
954 0
《Java 7程序设计入门经典》一2.11 速记赋值运算符
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.11节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1217 0
《Java 7程序设计入门经典》一2.10 赋值运算符
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.10节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
961 0
《Java 7程序设计入门经典》一2.9 具有“短路”功能的逻辑运算符
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.9节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1230 0
《Java 7程序设计入门经典》一2.8 关系运算符和逻辑运算符
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.9节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
965 0
《Java 7程序设计入门经典》一2.7 算术运算符
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.7节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1206 0
《Java 7程序设计入门经典》一2.6 运算符
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.6节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1001 0
《Java 7程序设计入门经典》一2.5 变量的作用域和生命周期
本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.5节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看
920 0
文章
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
Java工程师必读手册
立即下载
Java应用提速(速度与激情)
立即下载
Java单元测试实战
立即下载