以下代码皆在eclipse内进行操作
1.条件流程控制
1.1 if结构
1.1.1最简单的if结构
格式如下:
if(条件表达式){
代码块A;
}
此格式含义为:如果条件表达式成立,则执行代码块A,否则不执行 .
案例:
解析: 因为a的大小已经被赋值为1,而1是小于2的,所以表达式a < 2成立,执行代码块"System.out.println("a小于2");"输出结果为"a小于2",而表达式a > 2不成立,所以不执行语句"System.out.println("a大于2");"
提示:如果花括号{}里面只有一条语句,那么花括号可以省略,但是因为书写习惯,一般不建议省略.
1.1.2 if-else结构
格式如下:
if(条件表达式){
代码块A;
}
else{
代码块B;
}
此格式含义为:如果条件表达式成立,则执行代码块A,否则执行代码块B;
案例:
解析: 因为a被赋值为1, 所以不满足条件表达式a!=1,因此不执行代码"System.out.println("a不等于1");",而是执行代码"System.out.println("a等于1");",故最终输出结果为a等于1.
1.1.3 if-else if-else结构
格式如下:
if(条件表达式1){
代码块1;
}
else if(条件表达式2){
代码块2;
}...很多个else if...
else{
代码块n;
}
此格式含义为:如果满足条件表达式1,就执行代码块1,如果条件表达式1不成立,则在不满足条件表达式1的情况下满足条件表达式2,执行代码块2,以此类推,在最后都不满足的情况下,执行条件表达式n .
案例:
解析: 首先b被赋值为3,第一个条件表达式为b < 0,不满足,则在b >= 0的情况下判断第二个条件表达式b > 0,发现满足,执行第二个代码块.假如b被赋值为0,那样的话第一个和第二个都不满足,在第一个不满足的情况下b >= 0,在第二个不满足的情况下b <= 0,两个要同时成立,则第三个else隐藏的条件表达式为b == 0.
提示:在这种结构下,if后面可以接多个else if语句,不一定要在最后接个else.
1.2 switch结构
格式:
switch(表达式){
case值 1:
代码块1;break;
case值 2:
代码块2;break;
......
default:
代码块n;
}
表达式类型: char,byte,short,int,Character,Byte,Short,Integer,String,枚举类型,如果是其他类型会发生编译错误.(不接受long类型)
switch的表达式不是布尔表达式,而是一种类型,只能放这种类型进去.
解析: 如果有case的值符合表达式,那么就会输出后面接的代码块,而且我们可以发现在switch的格式中,每个代码块后面都有一个break.因为如果不加break的话,一旦某个case的值为true,那么后面的case就不会再进行判断,会直接输出后面的所有语句.default是默认,如果没有一个case值符合,就会输出default后接的代码块的内容.
案例:
解析: 首先value为3,所以系统就开始一个个匹配,看看3在哪里 ,当它匹配到3的时候,开始执行后面的代码块,也就是"System.out.println("value为3");",但是我们可以很明显的看到,输出的语句中有句话,一个是"value为3",一个是"value为4",为什么会这个样子,因为case 3的后面没有加break,而case 4的后面加了,所以执行case 3和case 4后面的代码块,但是没有执行case 5后面的代码块.
2.循环流程控制
2.1while循环
格式如下:
while(条件表达式){
循环体;
}
此含义为,如果条件表达式为真,则执行循环体,反之则不进行
while循环流程图
案例:
2.2 do-while循环
格式如下:
do{
循环体;
}while(条件表达式);
此含义就是先执行一次循环体,然后再进行条件表达式的判断,为true就再执行循环体,反之不执行.
do-while循环流程图
案例:
注意:现在实际开发中已经不怎么使用do-while循环了.
2.3 for循环
格式如下:
for(初始化表达式;条件表达式;步进表达式){
//此处的步进表达式就是i++/i--/++i/--i,对于for循环而言,三个表达式可以都没有,但必须要有那
//两个分号
循环体;
}
此含义为:先用初始化表达式初始化数据,再用条件表达式进行判断,为true则执行循环体,执行完后,进行步进表达式,为false直接结束.
for循环流程图
案例:
3.循环控制语句
break:结束当前循环;
continue:跳出当前循环,再接着进行下一次循环;
各位大佬里卖弄要是有错误的话,拜托告诉我一下,让我们一起进步吧,谢谢了!!!