目录
1.循环结构的四个基本要素:初始化条件、循环条件、循环体、迭代。
2.案例(2):使用while循环和一些分支语句实现每次输入商品编号时统计一次,当输入为0时,打印商品编号统计次数并结束统计。
一、循环结构for
1.循环结构的四个基本要素:初始化条件、循环条件、循环体、迭代。
for循环基本结构:
for(初始化条件、循环条件、迭代){
循环体
}
for循环中的初始化条件声明的变量仅限于该循环使用。(作用域小)
2.案例(1):使用for循环打印两个整数的最大公约数。
import java.util.Scanner; //导入Scanner类
class FlowControl2{
public static void main(String[] args) {
//使用for循环打印两个整数的最大公约数。
Scanner receiverNum = new Scanner(System.in);
System.out.println("请输入第一个数:");
int num1 = receiverNum.nextInt();
System.out.println("请输入第二个数:");
int num2 = receiverNum.nextInt();
//找出输入的这两个数中小的那一个
int min = (num1 < num2)? num1:num2;
for (int i = min; i >=1 ; i-- ){
if (num1 % i == 0 & num2 % i == 0){
System.out.println(num1 + "和" + num2 + "的最大公约数是:" + i);
break; //找到最大公约数后退出循环
}
}
}
}
输出结果:168和1212的最大公约数是12。
总结结论:使用for循环时从大到小筛选数值且只取最大值时,使用break在找到第一个(即最大的符合要求的值)时中断可以完美的完成任务。
二、循环结构while
1.while循环基本结构:
初始化条件
While(循环条件){
循环体
迭代
}
2.案例(2):使用while循环和一些分支语句实现每次输入商品编号时统计一次,当输入为0时,打印商品编号统计次数并结束统计。
import java.util.Scanner; //导入Scanner类
class FlowControl2{
public static void main(String[] args) {
//使用while循环打印商品编号统计次数
Scanner receiverNum = new Scanner(System.in); //定义一个Scanner类的对象
//定义三个整形变量表示对应商品统计次数
int count001 = 0;
int count002 = 0;
int count003 = 0;
//使用while循环让程序一次执行多次输入
while (true){
int state = 1; //定义一个整形变量state,为0时打印统计结果并结束循环
String num = receiverNum.next(); //定义字符串类num接收键盘输入
switch(num){ //使用switch实现输入对应商品编号时统计一次
case "001":
count001++; //输入001时count001加一
break;
case "002":
count002++; //输入002时count002加一
break;
case "003":
count003++; //输入003时count003加一
break;
case "0":
state = 0; //输入0时,state为0,后续执行if时打印统计结果并结束统计
break;
default:
//打印输入提示
System.out.println("请输入001、002、003、0中的一个、输入其他表示结束");
}
if (state == 0){ //使用if分支语句,判断输入值是否为0
//打印统计结果
System.out.println("count001: " + count001);
System.out.println("count002: " + count002);
System.out.println("count003: " + count003);
break; //退出while循环
}
}
}
}
输出结果:count 001统计了3次、count002统计了2次、count003统计了3次。
总结结论:当循环条件固定为为true时,循环执行到break之前,可以一直执行、一直循环下去。
三、循环结构do while
1.do while循环基本结构:
初始化条件
do{
循环体
迭代
}while(循环条件)
do while循环特色:不管是否满足循环条件,至少执行一次循环体和迭代。