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