黑马程序员技术交流社区

标题: do-while循环结构 [打印本页]

作者: yangjijin    时间: 2014-6-30 19:55
标题: do-while循环结构

1)        do-while循环的使用
a)        while循环就讲解到这里,我们来讲解另一个循环do…while循环
b)        我们先举一个生活中的例子,还是吃饺子吧,这次要先吃一个尝一下,然后问有没有吃饱,如果没有吃饱,就再吃一个,每吃一个都问有没有吃饱。对回答进行判断,只要回答的是:“y”,就不吃了,也就是循环结束;回答了否:“n”就接着吃,也就是循环要继续。
c)        分析:
1.        这个问题能不能用while循环解决呢?
a)        while循环要先判断才执行,可这次要先执行一次,再进行判断。
这里我们需要先执行,后判断,所以while循环的先判断,后执行不能适用。
我们需要使用do...while循环来解决这个问题:

d)        语法:
do {

                循环操作

} while ( 循环条件 );
e)        语法分析:
1.        以关键字do开头,然后是大括号括起来的循环操作;然后才是while关键字,和紧随的小括号括起来的循环条件。
2.        小括号后面以“;”结束。
f)        执行顺序:
1.        先执行一遍循环操作,然后判断循环条件,如果循环条件满足,循环继续执行,否则退出循环。
g)        特点:先执行,再判断
h)        代码:
import java.util.Scanner;
public class Demo004 {
        public static void main(String[] args) {
                Scanner input = new Scanner(System.in);
                String answer;
                do {
                        System.out.println("吃了一个饺子!");
                        System.out.print("吃饱了没有?(y/n):");
                        answer = input.next();
                } while (!answer.equals("y"));
                System.out.println("不吃饺子了!");
        }
}
i)        总结 :连续录入学生姓名,输入“q”则系统退出

public class HelloWorld {
        public static void main(String[] args) {
                String  name; // 姓名
                Scanner  input = new Scanner(System.in);

                do {
                        System.out.print("请输入学生姓名:");
                        name = input.next(); // 从控制台接收输入的姓名
                } while (!name.equals("q"));

                System.out.println("程序结束");
        }
}
2)        比较while循环和do-while循环
a)        语法不同
while (循环条件) {
                循环操作
}

do {
                循环操作
} while(循环条件);
b)        执行次序不同:
1.        while循环先判断,再执行;
2.        do-while循环先执行一次,再判断。
c)        初始情况不满足循环条件时
1.        while循环一次都不会执行
2.        do-while循环不管任何情况都至少执行一次
3)        小结
a)        使用do-while实现:输出摄氏温度与华氏温度的对照表,要求它从摄氏温度0度到250度,每隔20度为一项,对照表中的条目不超过10条。
      转换关系:华氏温度 = 摄氏温度 * 9 / 5.0 + 32
b)        提示:
1.        循环操作:计算摄氏温度,并输出对照条目
2.        循环条件:条目<=10 && 摄氏温度 <= 250
c)        代码:
public class TempTable {
        public static void main(String[] args) {
                double f;                 // 华氏
                double c = 0;         // 摄氏
                int count = 1;         // 条目
                System.out.println("摄氏温度" + "\t华氏温度");
                do {
                        f = c * 9 / 5.0 + 32; // 转换
                        System.out.println(c + "\t" + f);
                        c = c + 20;
                        count++;
                } while (count <= 10 && c <= 250);
        }


作者: 为爱编程(HOA)    时间: 2014-7-4 16:32
学习日记,看来得好好写啊!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2