流程控制
控制语句的分类:
顺序结构、条件判断结构、循环结构
if语句
//单分支
if(布尔表达式){
语句块
}
如果满足条件,就执行{}里的语句块,否则执行外面部分。
PS:if后面的{}可以不写,但是只负责if后面的一条语句。
//双分支
if(布尔表达式){
语句块1
}else{
语句块2
}
当布尔表达式为真时,执行语句块1,否则,执行语句块2。
//多分支
if(布尔表达式1) {
语句块1;
} else if(布尔表达式2) {
语句块2;
}…
else if(布尔表达式n){
语句块n;
} else {
语句块n+1;
}
当布尔表达式1为真时,执行语句块1;否则,判断布尔表达式2,当布尔表达式2为真时,执行语句块2;否则,继续判断布尔表达式3······;如果前面的都为假时,则执行else里的语句块n+1。
循环结构
while
while (布尔表达式) {
循环体;
}
在循环刚开始时,会计算一次“布尔表达式”的值,若条件为真,执行循环体,否则不执行。后续每次都判断表达式是否满足条件,每次满足都执行一次循环体。注意表达式要有结束条件,否则会出现死循环。
//计算1+2+3+4+5+……+100
int i = 1;
int sum =0;
while (i<=100){
sum+=i;
i++;
}
System.out.println(sum);
do-while
do-while循环结构会先执行循环体,然后再判断布尔表达式的值,若条件为真,执行循环体,当条件为假时结束循环。do-while循环的循环体至少执行一次。
do {
循环体;
} while(布尔表达式) ;//注意分号,不写会报错
int i = 101;
int sum = 0;
do{
sum += i;
i++;
}while(i<=100);
for
for (初始表达式; 布尔表达式; 迭代因子) {
循环体;
}
初始表达式里进行初始化,随后,对布尔表达式进行判定,若判定结果为true,则执行循环体,否则,终止循环;迭代因子里写的是控制循环变量的增减,如i++
。for循环在执行条件判定后,先执行的循环体部分,再执行步进。
int sum = 0;
int i;
for(i = 1;i<=100;i++){
sum += i;
}
System.out.println(sum);
增强for循环
for(遍历的类型 别名 : 要遍历的内容){
循环体;
}
循环分为两类
当型:while(){} for( ; ; ){}
直到型:do{}while();
死循环
for(;;){}
while(true){}
do{
}while(true);
循环中关键字
break作用:结束循环
//功能:求1-100的和,当和第一次超过100的时候,停止程序
int sum = 0;
for (int i = 1;i <= 100; i++){
sum += i;
if (sum>100)
break;
System.out.println(sum);
}
continue作用:结束本次循环,接着下一循环
for(int i=1;i<=100;i++){
if(i%6!=0){//不被6整除
continue;//停止本次循环,继续下一次循环
}
System.out.println(i);
}
return作用:结束当前正在执行的方法
for(int i=1;i<=100;i++){
while(i==36){
return;
}
System.out.println(i);
}