@[TOC](JAVA基础-循环结构)
循环结构—一重循环
while、do while、for
通过案例来引出循环:
【1】求合:1+2+3+4+5
public class TestWhile{
public static void main(String[] args){
//功能:1+2+3+4+5:
//定义变量:
int num1 = 1;
int num2 = 2;
int num3 = 3;
int num4 = 4;
int num5 = 5;
//定义一个求和变量:
int sum = 0;
sum += num1;
sum += num2;
sum += num3;
sum += num4;
sum += num5;
System.out.println(sum);
}
}
缺点:变量定义过多
解决办法:引用num++,来减少num的定义
public class TestWhile{
public static void main(String[] args){
//功能:1+2+3+4+5:
//定义变量:
int num = 1;
//定义一个求和变量:
int sum = 0;
sum += num;
num++;
sum += num;
num++;
sum += num;
num++;
sum += num;
num++;
sum += num;
num++;
System.out.println(sum);
}
}
缺点:重复计算太多
解决办法:引入循环:
public class TestWhile{
public static void main(String[] args){
//功能:1+2+3+4+5:
//定义变量(初始化):
int num = 1;
//定义一个求和变量:
int sum = 0;
//while循环
while(num<=5){
sum += num;
num++;
}
System.out.println(sum);
}
}
【while循环原理】先进行()中的判定,结果为布尔类型,判断结果为true,则开始执行{}内容,如果判断结果为false,则循环结束!
【执行过程】
num=1 sum=0
(1).num=0<=5—》true—》sum=1 num=2;
(2).num=1<=5—》true—》sum=3 num=3;
(3).num=2<=5—》true—》sum=6 num=4;
(4).num=3<=5—》true—》sum=10 num=5;
(5).num=4<=5—》true—》sum=15 num=6;
(6).num=6<=5—》false—》循环终止,输出sum:15
【循环四要素】
【条件初始化】初始化,只执行一次,while循环中,需要把初始化放在循环体外,否则每次执行循环体都将进行条件初始化。
【条件判断】用于判断是否需要执行
【循环体】判断为true则执行
【迭代】判断为true则执行
【do while与while的区别】
while判断后再执行,do while则先执行之后再进行判断。
【do while的使用场景】
考试补考(需要先考试获取成绩之后才能知道是否需要补考,所以要先执行,再判断。)
【for(形式灵活,结构如下)】
for(条件初始化;条件判断;迭代){
循环体
}
【while、do while、for的效率谁更高】
一样高(由于for形式比较简单,日常一般使用for循环)
【练习】
【1+2+3+…+100】
//求:1+2+3+.....+100
public class PracticeBk01{
public static void main(String[] args){
int sum=0;
int num=1;
while(num<=100){
sum+=num;
num++;
}
System.out.println(sum);
}
}
【3691215】
//求3*6*9*12*15
public class PracticeBk02{
public static void main(String[] args){
int sum=1;
int num=3;
while(num<=15){
sum*=num