一 : 程序流程
1 : 程序流程说明
程序流程可以分为以下三种:
顺序结构:程序从上向下逐行逐条执行,只能向下;
分支结构:选择结构,判断语句
循环结构:重复执行一段或一条语句
2 : 分支结构
① :If一般用于单个判断,表示如果的意思;条件成立则会执行相应的代码。
if(表达式){
//代码块(表达式为true执行这里代码)
}
② : If-else结构一般用于二选一的情况,如果if成立执行if的代码块,否则执行else中的代码块。
if(表达式){
//代码块(表达式为true执行这里代码)
}else{
//代码块(表达式为false执行这里代码)
}
③ : if-- else if-- else
多重if结构主要用于多重判断的情况,语法如下:
if(表达式1){
//表达式1为true时,执行这里的代码
}else if(表达式2){
//表达式2为true时,执行这里的代码
}else if(表达式3){
//表达式3为true时,执行这里的代码
}
-----
else{
//所有条件都不满足的时候,会执行这里的代码
}
④ : 嵌套if
嵌套if就是在if判断语句中还有if判断的语句,嵌套if控制语句可以通过外层语句和内层语句的协作,增强程序的灵 活性。
if(条件1) {
if(条件2) {
代码块1
} else {
代码块2
}
} else {
代码块3
}
If小结:
一次判断用if语句
两次判断(一个真一个假)用if - else 语句
两次以上判断使用 if - else if - else
⑤ : switch语句
switch语句是一种选择语句,可以通过匹配某个条件,来执行某块代码。
switch (表达式) {
case 常量 1:
语句;
break; // 跳出switch语句
case 常量 2:
语句;
break;
…
default:
语句;
}
注意:表达式可以接受的类型有:int、short、byte、char、枚举类型、String -
Switch语句的特点:
1、switch用于多重分支且条件判断是等值判断的情况
2、switch结束有两种情况:遇到 break; 执行到switch语句结束
3、case和default是没有前后顺序的,但是执行时先执行case语句,如果没有符合的会执行default语句;Default语句一般是放在最后
Switch语句和if语句比较
1:相同点:
都可以用来处理多分支结构
2:区别:
If多用于区间判断
Switch用于等值条件的判断
3:用switch能做的,用if都能做,但反过来则不行
2 : 循环
常用的循环结构有三大类:
While循环, do-while循环,for循环。
在java5中引入一种主要用于数组和对象的增强型for循环,又称foreach循环。
① : while 循环
while ( 循环条件 ) {
循环操作/循环体
}
注意:
While是先判断在执行,编写循环时,明确循环条件和循环操作。
只有当循环条件为true时,才会执行循环操作
注意在循环体中更新循环条件,否则容易造成死循环(条件永远成立)
② : do -- while 循环
do {
循环操作(先执行一次)
} while ( 循环条件 );
注意:
先执行一遍循环操作,再判断循环条件
符合循环条件,循环继续执行;否则,循环退出
注意while后面的;不能省略
While 和do -- while的区别
1:语法不同,注意do - while后面的分号不能丢;
2:执行次序不同
While是先判断在执行,如果不满足条件,一次都不会执行;
do-while 是先执行一次,再做判断,如果不满足,至少执行了一次;
3:当初始情况不满足循环条件时
while循环一次都不会执行
do-while循环不管任何情况都至少执行一次
③ : for 循环
for(参数初始化; 循环条件; 更新循环变量){
循环体
}
如:
for(int i = 1; i <= 10; i++){
System.out.println(i);
}
注意:
For 循环中必须要参数初始化,否则报错
For循环中必须要有循环条件,且必须更新循环条件,否则就是死循环
补充 : break,continue
break 主要是在循环或 switch 语句中,用来跳出整个语句块的.
break用于完全结束一个循环,跳出循环体,执行循环后面的语句
continue是跳过本次循环中剩下的语句,执行下一次循环。
简单点说就是break是结束本次循环,continue终止本次循环。
④ : 双层循环所谓双层(双层)循环,就是在循环内部嵌套循环。
语法:
for(变量 i; 循环条件;跟新变量){
//循环操作1
for(变量 j; 循环条件;跟新变量){
//循环操作2
}
}
特点:
1:外层循环控制行,内层循环控制列
2:外层循环更新一次,内层循环更新一轮
举例:将外层循环变量i看作时针,内层循环j看作分针。当分针j转一圈,时针i跳一个值;分针j再转一圈,时针i再跳一个值;如此循环往复,直到不满足外层循环条件
原理:
1:比较相邻的元素。如果第一个比第二个大,就交换他们两个。
2:对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。此时这一点,最后的元素应该会是最大的数。
3:针对所有的元素重复以上的步骤,除了最后一个。
4:持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。