三种循环结构语句
1.for循环
格式:
for(初始化语句1; 判断语句2; 步进语句3){
循环代码4
}
- 1
- 2
- 3
- 4
执行流程:
先执行1初始化语句
执行2判断语句,如果判断结果是true
执行4循环代码
执行3步进语句
继续回到2 4 3 2 4 3
如果判断结果是false,代表循环结束
注意:
初始化语句只在第一次循环中执行,之后不再执行
代码
public static void main(String[] args) {
/*
判断0-10的奇偶数
*/
//偶数:能够被2整除的数字称为偶数
// 0 是一个特殊的偶数
for(int i=0;i<=10;i++){
if (i%2 == 0){
System.out.println(i+"是偶数");
}else {
System.out.println(i+"是奇数");
}
}
}
console
0是偶数
1是奇数
2是偶数
3是奇数
4是偶数
5是奇数
6是偶数
7是奇数
8是偶数
9是奇数
10是偶数
2.while循环
格式:
初始化语句1;
while(判断语句2){
循环代码3;
步进语句4;
}
执行流程:
1 初始化语句
2 执行判断语句,如果是true就执行大括号里面的代码,如果是false就结束循环
3 循环代码
4 步进语句
再次循环执行2判断语句
- 1
- 2
- 3
- 4
- 5
- 6
- 7
代码
public static void main(String[] args) {
/*
求1-100的累加和
*/
int x = 1;
int sum = 0;
while (x<=100){
sum += x;
x++;
}
System.out.println("1-100的累加和为:"+sum);
}
console
1-100的累加和为:5050
- 1
3.do-while循环
格式:
初始化语句1;
do{
循环语句2;
步进语句3;
}while(判断语句4);
- 1
- 2
- 3
- 4
- 5
- 6
执行流程:
1 初始化语句
2 循环语句
3 步进语句
4 判断语句 , 如果判断的结果是true就继续循环,如果判断的结果是false就结束循环
注意:
do-while循环是先执行后判断,不管条件是否满足至少执行一次
- 1
- 2
- 3
- 4
- 5
- 6
- 7
代码
public static void main(String[] args) {
/*
输出1-10的和
*/
int a = 1;
int sum = 0;
do {
sum += a;
a++;
}while (a<=10);
System.out.println("1-10的和为:"+sum);
}
console
1-10的和为:55
三种循环的使用场景
三种循环结构均可实现相应的功能,按照实际需要选择更为简便的形式。以下为使用场景的总结:
1.明确循环次数的时候:建议使用for循环
2.不明确循环次数的时候:建议使用while循环
3.do...while循环比较特殊,它先执行循环体,然后根据判断条件决定是否再次执行循环,即do...while至少执行一次循环
循环嵌套
代码1
public static void main(String[] args) {
/*
循环嵌套:
外层循环执行1次,内存循环执行一圈
*/
/*
循环出从0点0分-23点59分
*/
//遍历小时
for (int i=0; i<24; i++){
//遍历分钟
for (int j=0; j<60; j++){
System.out.println(i + "点" + j + "分");
}
}
console
0点0分
0点1分
0点2分
...
23点57分
23点58分
23点59分
代码2
public static void main(String[] args) {
for (int i = 1; i < 10; i++) {
System.out.println("你是第" + i + "位顾客");
while (true) {
System.out.println("请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买");
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
if (a == 1) {
System.out.println("您购买的是水果");
} else if (a == 2) {
System.out.println("你购买的是蔬菜");
} else if (a == 3) {
System.out.println("您购买的是饮品");
} else if (a == 4) {
break;
} else {
System.out.println("您输入的指令有错误");
}
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
console
你是第1位顾客
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
1
您购买的是水果
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
2
你购买的是蔬菜
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
4
你是第2位顾客
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
3
您购买的是饮品
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
4
你是第3位顾客
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
2
你购买的是蔬菜
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
...
你是第9位顾客
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
2
你购买的是蔬菜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
两种死循环的写法
1.while(true){...}
2.for(;;){...}