循环:就是重复发生的过程(循环一般有重复的前提条件)
循环问题的共同点:
- 都有一个初始化状态
- 都有一个循环的判断条件
- 都有反复要做的事
- 都需要为下一次的循环做准备
写循环前回答四个问题
(1)初始状态由哪些变量描述,其初值是什么?
(2)循环的控制条件是什么?(题目中给出的条件往往是反的)
(3)反复做什么
(4)怎么过渡到下一次
while循环
语法:while(表达式){
循环体
}
表达式结果如果为true,那么就执行循环体,如果是false就结束循环
/**
* 打印1到100之间的数
* 循环条件:1~100
*/
int i = 1;
//i<=100,只有循环条件是true的情况下执行循环体,循环条件一定是true或false
while (i <=100){
System.out.println(i);
//计数器进行累加
i++;
}
do…while循环
语法:
do{
循环体
}while(循环条件 )
/**
* 打印1到100之间的数
* 循环条件:1~100
*/
int i = 1;
do{
System.out.println(i);
//计数器进行累加
i++;
}while(i <= 100);
注意:do....while和while,前者是先执行循环体,后者是先判断再执行循环体
for循环
for循环括号中的内容可以理解为一个范围,
比如for(int i=1;i<=100;i++)就可以理解为【1,100】
语法:
for(表达式1;表达式2;表达式3){
循环体
}
表达式1:计数器的初始化,它只能初始化一次
表达式2:循环条件的判断,循环多少次就执行多少次
表达式3:计数器的累加,循环多少次就累加多少次,每次循环执行完毕再累加
public static void main(String[] args) {
int sum = 0;
for (int i = 1;i <= 100;i++) {
if (i%2 == 0){
sum += i;
}
}
System.out.println("1~100的偶数和是:" + sum);
}
循环的嵌套
//打印5行5列的⭐
public static void main(String[] args) {
for (int j = 0;j<5;j++){
for (int i = 0;i <5;i++){
System.out.print("⭐");
}
System.out.println();
}
}