一、流程概述与控制
顺序结构
从上到下执行。
二、判断语句
if格式
If(关系表达式){
语句体;
}
执行流程
条件满足(true)执行语句,不满足则不执行。
If.....else.....格式
If(关系表达式){
语句体1;}
Else{ 语句体2;
}
If else if else格式
If(关系表达式){
语句体1;}
Else if{ 语句体2;
}
Else if{ 语句体3;
}.....
Else if{ 语句体n;
}
三、选择语句
switch语句格式:
Switch(表达式){
Case 常量值1:
语句体1;
Break;
Case 常量值2:
语句体2;
Break;
...
default :
语句体n+1;
Break;
}
执行流程
1.首先计算出表达式的值;
2.其次,与case比较,一旦有对应值,就执行,执行过程中遇到break就结束。
3.都不匹配,执行default结束。
注意事项
1.多个case后面的数值不可以重复;
2.switch后面的小括号当中只能是下列数据类型;
基本数据类型:byte/short/char/int;
引用数据类型:String字符串、enum枚举;
3.switch语句格式可以很灵活:前后顺序可以颠倒,而且break语句还可以省略。
“匹配哪一个case就从那一个位置向下执行,直到遇到break或者整体结束”
四、循环语句
for循环
for(初始化表达式;布尔表达式;循环表达式){
循环体
}
执行流程
直至不满足布尔表达式位置。
1.while循环
标准格式
While(条件判断){
循环体
}
拓展格式
初始化表达式
While(布尔表达式){
循环体
步进表达式
}
2.do…while…循环
初始化表达式1
do{
循环体3
步进表达式4
}While(布尔表达式)2;
执行流程
执行134>234>234…2不满足为止。
题目
求出1-100 之间的偶数和。
思路:
1.使用到num % 2 == 0 ;
2.需要变量进行累加操作,也就好比是一个存钱罐。
public class While2 {
public static void main(String[] args) {
int sum = 0;//当前的和
int i = 1;//初始值
while (i <= 100){
if(i % 2 == 0){
sum += i;//偶数进来后他们相加
}
i++;//进入循环的数字相加
}
System.out.println(sum);
int same = 0;
for (int i1 = 1; i1 <= 100; i1++) {
if(i1 % 2 == 0){
same += i1;
}
}
System.out.println(same);
int last = 0;
int i2 = 1;
do{
if(i2 % 2 ==0){
last += i2;
}
i2++;
}while(i2>=1&&i2<=100);
System.out.println(last);
}
}
三种条件的区别
1.如果条件从来没有满足过,那么for循环while循环将会执行0此,do…while循环将执行一次。
2.for循环的变量在小括号当中定义,只有循环内部才可以使用。while和do—while本来就在外面,所以出了循环后还可以继续使用。
break语句
1.还可以在switch语句当中,一旦执行,整个swith就会停下来;
2.还可以用来停止循环语句。
凡是次数确定的用for循环,否则是while。
continue语句
一旦执行,立刻跳过当前次循环内容,马上开始下一次循环。
死循环
死循环的标准格式;
While(true){
循环体;
}
5.嵌套循环
public class LoopHourAndMinute {
public static void main(String[] args) {
for (int hour = 0; hour < 24; hour++) {
for (int minute = 0; minute < 60; minute++) {
for (int second = 0; second < 60; second++) {
System.out.println(hour + ":" + minute + ":" + second);
}
}
}
}
}