小白的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 = ; i <=; i++) {
System.out.println("*************************************");
System.out.println("请输入第"+i+"个班级4位学员的成绩:");
int [] scores=new int[]; //学员成绩数组
double sum=0.0; //计算总和
for (int j = ; j <scores.length; j++) {
System.out.println("请输入第"+(j+)+"位学员的成绩:");
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 = ; i <=; i++) {
//内层循环控制个数
for (int j = ; j <=; 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=; //存储大于85分的人数
for (int i = ; i <=; i++) {
System.out.println("*************************************");
System.out.println("请输入第"+i+"个班级4位学员的成绩:");
int [] scores=new int[]; //学员成绩数组
double sum=0.0; //计算总和
for (int j = ; j <scores.length; j++) {
System.out.println("请输入第"+(j+)+"位学员的成绩:");
scores[j]=input.nextInt();
sum=sum+scores[j];
if(scores[j]<){
//结束本次循环,进入下一次循环
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=;
//外层循环控制5家店
for (int i = ; i <=; i++) {
System.out.println("欢迎光临第"+i+"家店");
//内层循环控制最多买3件衣服
for (int j = ; j <=; j++) {
System.out.println("是否离开(y/n)");
char chois=input.next().charAt();
if(chois=='y'){
//如果输入Y代表离开
break;
}
System.out.println("买了一件衣服");
count++;
}
}
System.out.println("共买了"+count+"件衣服");
}
}
小白的java学习之路 “ 二重循环”的更多相关文章
- 小白的java学习之路 “ 循环结构(一)”
循环: 重复得做某一件事情 举例: 打印50份试卷 沿操场跑10圈 做100道编程题 循环结构的特点: 循环条件 (50,10,100) 循环操作 (打印试卷,沿操场跑圈,做编程题) while 循环 ...
- 小白的java学习之路 “ 循环结构(二)”
一.for 循环 语法: for(表达式一;表达式二;表达式三){ 循环操作 } 表达式一:参数初始化 表达式二:条件判断 表达式三:更新循环变量 执行流程: 步骤一:执行表达式一.初始化参数 步骤二 ...
- 小白的java学习之路 “ 数组”
数组 一.什么是数组: 数组是一个变量,存储相同数据类型的一组数据 声明一个变量就是在内存空间划出一块合适的空间 声明一个数组就是在内存空间划出一串连续的空间 二.数组基本要素: 标识符:数组的名称, ...
- 小白的java学习之路 “ 选择结构(一)”
if选择结构: if选择结构是根据条件判断之后再做处理的一种语法结构. 1.if选择结构的语法: public class Demo{ public static void main(String[] ...
- 小白的java学习之路 “ 变量、数据类型和运算符”
一.变量: 1.什么是变量? 变量是一个数据存储空间的表示 变量由:变量名 变量类型 变量的值 2.创造变量的两种方法: 1.声明-->赋值-->取值 //声明变量 int money ...
- 小白的java学习之路 “ 带参数的方法”
一.带参数的方法: 1.1 语法: <访问修饰符> 返回类型 <方法名>(<形式参数列表>) { //方法的主体 } 1.2 案例: 榨汁机 public clas ...
- 小白的java学习之路 "类的无参方法"
Java注释: //:单行注释 /**/:多行注释 /** */:JavaDoc注释语法: 访问修饰符 返回值类型 方法名(){ 方法体 } 举例: public void run(){ System ...
- 小白的java学习之路 “ 类和对象”
一.※ 万物皆对象 二.对象的两个特征: 属性:对象具有的各种特征 方法:对象执行的操作 对象:用来描述客观事物的一个实体,由一组属性和方法构成 三.封装: 对象同时具有属性和方法两项特性 对象的属性 ...
- 小白的java学习之路 “ 选择结构(二)”
switch 选择结构: 为什么使用switch选择结构: switch选择结构可以更好地解决等值判断问题. switch选择结构的四个关键字: switch case default ...
随机推荐
- 机器学习(ML)十之CNN
CNN-二维卷积层 卷积神经网络(convolutional neural network)是含有卷积层(convolutional layer)的神经网络.卷积神经网络均使用最常见的二维卷积层.它有 ...
- Django (一) 基础
创建项目 创建app python manager.py startapp app01 修改.添加url from django.conf.urls import url,include fr ...
- pt-query-digest 慢日志监控
一.安装percona-toolkit,以centos为例 yum -y install https://repo.percona.com/yum/percona-release-latest.noa ...
- WebSocket协议分析
WebSocket协议分析 1.什么是WebSocket协议 WebScoket协议是基于TCP协议建立的全双工通信,所谓的全双工通信就是双向同时通信. 2.WebSocket协议优点 WebSock ...
- linux系统初装
一.linux系统安装 VMware workstation是一个虚拟机软件,它的主要作用是在原有操作系统(windows或linux)下,虚拟出一台电脑,你可以在这台虚拟电脑上安装不同的操作系统,进 ...
- JS从键盘输入当月利润,求应发放奖金总数
题目:企业发放的奖金根据利润提成.利润(I)低于或等于10万元时,奖金可提10%:利润高 于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提 成7.5%:20万到4 ...
- JS水仙花数
题目:3位数==个位立方+十位的立方+百位的立方.这个3位数就是水仙花数.要求打印出所有的水仙花数 <body> <div id=d1> </div> <sc ...
- C++中的public、protected和private
访问权限控制 一个类的public的成员变量.成员函数,可以通过类的实例变量进行访问. 一个类的protected的成员变量.成员函数,无法通过类的实例变量进行访问,但是可以通过类的友元函数.友元类进 ...
- K8s~为pod添加sidecar进行日志收集
我们在k8s部署服务时,一般来说一个服务会对应一类pod,而pod通过rs实现副本集,而这些pod的日志一般有控制台stdout和文件的,一般会把这些日志最终输出到elasticsearch里,再通过 ...
- Maven jar包冲突
在pom.xml中引入一个依赖,maven会自动导入这个依赖的依赖,方便的同时也会造成jar包冲突: (1)A.B都依赖C,我们导入A(自动导入C).B(自动导入C),maven自动导入了2个C,到底 ...