1.什么是二重循环:
                        一个循环体内又包含另一个完整的循环结构
                    语法:
                            while(循环条件1) {
                                 //循环操作1
                                 while(循环条件2) {
                                      //循环操作2
                                 }
                            }

do {
                                //循环操作1
                                do {
                                    //循环操作2
                                }while(循环条件1);
                            }while(循环条件2);

for(循环条件1) {
                                 //循环操作1
                                 for(循环条件2) {
                                      //循环操作2
                                 }
                            }

while(循环条件1) {
                                  //循环操作1
                                  for(循环条件2) {
                                           //循环操作2
                                  }
                            }
                            ※各种循环可以相互嵌套
    2.二重循环执行顺序:
                        外层循环执行1次内层循环执行1周

案例:
                        若有3个班级各4名学员参赛,如何计算每个班级参赛学员的平均分?
                        public class Demo02 {
                            public static void main(String[] args) {
                                Scanner input=new Scanner(System.in);
                                
                                
                                //二重循环
                                
                                /**
                                 *
                                 * 外层循环执行一次,内层循环执行1周
                                 *
                                 */
                                for (int i = 1; i <=3; i++) {
                                    System.out.println("*************************************");
                                    System.out.println("请输入第"+i+"个班级4位学员的成绩:");
                                    int [] scores=new int[4];        //学员成绩数组
                                    double sum=0.0;        //计算总和
                                    for (int j = 0; j <scores.length; j++) {
                                        System.out.println("请输入第"+(j+1)+"位学员的成绩:");
                                        scores[j]=input.nextInt();
                                        sum=sum+scores[j];
                                    }
                                    System.out.println("第"+i+"个班级的平均分为:"+sum/scores.length);
                                }
                            }
                        }
                    案例:打印矩形
                            public class Demo03 {
                                public static void main(String[] args) {
                                    //外层循环控制行数
                                    for (int i = 1; i <=5; i++) {
                                        //内层循环控制个数
                                        for (int j = 1; j <=5; j++) {
                                            System.out.print("*");
                                        }
                                        System.out.println();
                                    }
                                }
                            }
    3.在二重循环中使用 continue:使用continue代表结束当前循环,继续下一次循环

案例:若有3个班级各4名学员参赛,计算每个班级参赛学员平均分,统计成绩大于85分学员数
                    public class Demo04 {
                        public static void main(String[] args) {
                            Scanner input=new Scanner(System.in);
                            
                            //二重循环
                            
                            /**
                             *
                             * 外层循环执行一次,内层循环执行1周
                             *
                             */
                            
                            int count=0;        //存储大于85分的人数
                            for (int i = 1; i <=3; i++) {
                                System.out.println("*************************************");
                                System.out.println("请输入第"+i+"个班级4位学员的成绩:");
                                int [] scores=new int[4];        //学员成绩数组
                                double sum=0.0;        //计算总和
                                for (int j = 0; j <scores.length; j++) {
                                    System.out.println("请输入第"+(j+1)+"位学员的成绩:");
                                    scores[j]=input.nextInt();
                                    sum=sum+scores[j];
                                    if(scores[j]<85){
                                        //结束本次循环,进入下一次循环
                                        continue;
                                    }
                                    count++;
                                }
                                System.out.println("第"+i+"个班级的平均分为:"+sum/scores.length);
                            }
                            System.out.println("分数大于85的人数:"+count);
                        }

}
    4.在二重循环中使用 break:使用break代表结束(跳出)当前循环

案例:有5家衣服专卖店,每家最多购买3件。用户可以选择离开,可以买衣服 最后打印总共买了几件衣服

public class Demo05 {
                        public static void main(String[] args) {
                            Scanner input=new Scanner(System.in);
                            int count=0;
                            //外层循环控制5家店
                            for (int i = 1; i <=5; i++) {
                                System.out.println("欢迎光临第"+i+"家店");
                                //内层循环控制最多买3件衣服
                                for (int j = 1; j <=3; j++) {
                                    System.out.println("是否离开(y/n)");
                                    char chois=input.next().charAt(0);
                                    if(chois=='y'){
                                        //如果输入Y代表离开
                                        break;
                                    }
                                    System.out.println("买了一件衣服");
                                    count++;
                                }
                            }
                            System.out.println("共买了"+count+"件衣服");
                        }
                    }

最新文章

  1. js完美身份证验证
  2. HDU 4648 Magic Pen 6 思路
  3. 【锋利的JQuery-学习笔记】Tootip(提示框)
  4. poj 2492 并查集
  5. 股票中的数学:EMA的推导01
  6. 疯狂VirtualBOX 实战讲学录:小耗子之VirtualBOX修炼全程重现
  7. #include &lt;boost/asio.hpp&gt;
  8. WL(Wear leveling)磨损平衡
  9. 来自projecteuler.net网站的练习题2
  10. Masonry框架源码深度解析
  11. 【Unity与23种设计模式】原型模式(Prototype)
  12. html-form
  13. 基于Vue的Quasar Framework 介绍 这个框架UI组件很全面
  14. Windows下,python pip安装时ReadTimeoutError解决办法
  15. SGCC_UAP启动停留在initializing java tooling(1%)
  16. Android Studio 中的FindBugs插件使用,轻松帮你发现Bug (转)
  17. CF10D LCIS
  18. psutil库
  19. CorelDRAW中关于锁定与解锁对象的操作
  20. SublimeText配置Python3运行环境

热门文章

  1. Word 自动图文集使用方法
  2. 剑指offer54:字符流中第一个不重复的字符
  3. python 之 logger日志 字典配置文件
  4. Fiddler讲解3
  5. PowerBuilder学习笔记之3应用对象
  6. js同时获取多个共同class内容标签内容集合
  7. web前端如何优化自己的代码
  8. 小程序npm构建
  9. CentOS7安装CDH 第七章:CDH集群Hadoop的HA配置
  10. linux-centos7.6设置固定IP网络方法