1.程序的运行流程
1.顺序流程(自上到下)
程序自上而下执行
执行结果:
2.分支流程
选择结构
单if语句 :
if (逻辑表达式){
// 语句体;
}
标准if-else语句 :
if(逻辑表达式){
// 语句体;
} else {
// 语句体;
}
扩展if-else语句:
if(逻辑表达式1){
// 语句体;
}else if(逻辑表达式2){
// 语句体;
}else if (逻辑表达式3){
// 语句体;
}else{
// 语句体;
}
switch结构
switch(表达式){
case 值1:
语句体;
break;
case 值2:
语句体;
break;
case 值3:
语句体;
break;
…
default:
语句体;
break;
}
switch结构流程解释:
1.首先计算出表达式的值
2.然后和case依次比较,如果有对应的值,就执行相同的语句,在执行的过程中,遇到break就会结束。
3.最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束。
switch结构语句,注意事项:
1.多个case后面的数值不可以重复。
2.switch后面的小括号当中只能是下列数据类型:
基本数据类型:byte / short / char / int
引用类型:String字符串、enum枚举
3.switch语句格式可以很灵活:前后顺序可以颠倒,而且break语句还可以省略。
“匹配哪一个case就从哪一个位置向下执行,直到遇到break或者整体结束为止”
4.switch与case之间的值比较只能是单值,而不能是范围。
5.default语句可以放到switch语句的任意位置
6.如果case语句中没有break,那么程序就当做下面没有case情况一直执行,直到遇到break关键字为止。
7.假如在switch语句中没有任何break跳出关键字,那么在匹配的值往下的语句都会执行,包括default部分的语句。
用switch语句分析字符串本质(重点):
每一个对象都有自己的hashcode,字符的本质还是数字。
3.循环流程
1.while循环
while是最基本的循环,它的结构:
while(布尔表达式){
循环内容
}
1.只要布尔表达式为true,循环就会一直执行下去
2.循环结束需要一个让表达式不成立的条件
3.少部分情况需要循环一直执行,比如服务器的请求响应监听等。
4.循环条件一直为true,就会造成无限循环(死循环),正常的业务编程中应该避免死循环。会影响程序性能或者造成程序卡死崩溃。
题:计算1+2+3+…+100=?
2.dowhile循环
dowhile循环的结构:
do{
//代码语句
}while(布尔表达式);
While循环和do-While循环的区别:
while循环先判断,后执行。dowhile循环先执行一次后判断。
Do…while循环至少会执行一次代码语句,然后在判断。
3.循环跳出关键字
1. break; 跳出(终止)整个的循环
2. continue; 结束当前单次循环,开始下一次的循环
注意事项:
1.break与continue一般都放在方法体的最后。
2.break只能跳出当前层的循环(也就是说只能跳出一层循环)。
关于循环的标号:
每一个循环都可以在关键字的左边加一个标号,这个号的名字只符标识符规范就可以了,这个标号的作用是可以跳出或者继续指定的外层循环。
比如:
4.For循环
for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。
for循环执行的次数是在执行前就确定的,所以非常适合循环次数已经确定的情况。
语法格式如下:
for(初始化①;布尔表达式②;步进表达式④){
循环体③
}
执行流程:
·执行顺序:①②③④>②③④>②③④>②③④…直到不满足程序结束为止。
·①负责完成循环变量初始化。
·②负责判断是否满足循环条件,不满足则跳出循环。
·③具体执行的语句
·④循环后,循环条件所涉及变量的情况。(一般用于跳出循环)
循环结构的基本组成部分,一般可以分成四部分:
- 初始化语句:在循环开始最初执行,而且只做唯一 一次。
- 条件判断:如果成立,则循环继续;如果不成立,则循环退出。
- 循环体:重复要做的事情内容,若干行语句。
- 步行语句:每次循环之后都要进行的扫尾工作,每次循环结束之后都要执行一次。
For循环嵌套
嵌套循环,是指一个循环的循环体是另一个循环体。
比如for循环里面还有一个for循环,就是嵌套循环。
总共的循环次数 = 外循环次数*内循环次数
嵌套循环格式:
for(初始化①;布尔表达式②;步进表达式⑦){
for(初始化③;布尔表达式④;步进表达式⑥){
循环体⑤
}
}
嵌套循环执行流程:
执行顺序:①②③④⑤⑥>④⑤⑥>⑦②③④⑤⑥>④⑤⑥…
外循环一次,内循环多次。
举例俯卧撑:一共做5组,每组做10个。5组就是外循环,10个就是内循环。
For循环(死循环)
for ( ;;) {
}
流程图:
5.main(null);
调用main()方法,向其传入命令行参数,因为其传入的参数为null,所以需要重新接受并传入,循环执行。
原创文章,欢迎转载,请注明文章出处。