顺序结构
- Java的基本结构就是顺序结构,除特别指明外,都是从而向下,一句一句来执行。顺序结构是最简单的算法结构,任何一种算法都离不开顺序结构。
选择结构
当你老了,回顾一生,就会发觉:什么时候出国读书、什么时候决定做第一份职业、何时选定了对象而恋爱、什么时候结婚,其实都是命运的巨变。只是当时站在三岔路口,眼见风云千樯,你做出选择的那一日,在日记上,相当沉闷和平凡,当时还以为是生命中普通的一天。
- if 选择结构
if 单选择
if(布尔表达式){
布尔表达式为true时,执行的语句;
}
if 双选择结构
if(布尔表达式){
布尔表达式为true时,执行的语句;
}else{
布尔表达式为false时,执行的语句;
}
if 多选择结构
if(布尔表达式1){
布尔表达式1为true时,执行的语句;
}else if(布尔表达式2){
布尔表达式2为true时,执行的语句;
}else if(布尔表达式3){
布尔表达式3为true时,执行的语句;
}else{
以上布尔表达式都不为true时,执行的语句;
}
嵌套的 if 结构
if(布尔表达式1){
如果布尔表达式1的执行结果为true,则执行下面的语句;
if(布尔表达式2){
布尔表达式2为true时,执行的语句;
}
}
嵌套的 if 结构应用:查找1~100中的某数字,可以使用嵌套的if结构,采用二分法查找。
- switch 多选择结构
1、多选择结构还有一种实现方式,就是switch case 语句。switch case语句判断一个变量与一系列值中的某个值是否相等,每个值称为一个分支。
2、switch语句中的变量类型可以是byte、short、int、char,从jdk1.7开始,switch支持字符串String类型了。同时case标签必须为字符串常量或字面量。
3、为避免case穿透,需给每个case后加上break关键字来结束循环。
switch(expression){
case value:
//语句
break;
case value:
//语句
break;
//可以有任意数量的case语句
default://可选
//语句
}
循环结构
- while循环
while(布尔表达式){
布尔表达式为true,执行循环语句;
}
1、只要布尔表达式为true,循环就会一直执行下去;
2、我们大多数情况,是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环;
3、少部分情况,需要循环一直执行,比如服务器的请求响应监听等;
4、循环条件一直为true,就会造成无限循环,即死循环,我们正常的开发中应避免死循环,会影响程序性能或者会使程序崩溃!!
- do…while 循环
do{
//语句;
}while(布尔表达式);
1、对于while循环而言,如果不满足条件,则不进入循环,但有时需要不满足条件时,也执行一遍语句。因此我们可以使用do…while 循环。
2、while 循环和do…while 循环的主要区别在于,do…while 循环不管是否满足条件,都会至少执行一次语句。其次,while 是先判断后执行,do…while 是先执行后判断。
- for循环
for(初始化;布尔表达式;更新){
//循环语句;
}
1、for循环是支持迭代的一种通用结构,是最有效、最灵活的循环结构。
2、for循环最先执行初始化步骤,可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。之后,检测布尔表达式的值,如果为true,则执行循环语句,若果为false,则结束本次循环,执行循环体后面的语句。执行一次循环后,更新循环变量的值,再次检测布尔表达式,循环执行本过程。
//死循环
for(;;){
}
用for循环输出1~1000内能被5整除的数,并且每行输出3个
for(int 1 = 0;i <= 1000;i++){
if(i%5 == 0){
System.out.println(i + "\t");
}
if(i%(3*5) == ){
System.out.println(i + "\n");
//System.out.println("");
}
}
- 增强for循环
for(声明语句: 表达式){
//语句
}
1、声明语句:声明新的局部变量,该变量的类型必须和表达式中的数据类型相匹配,其作用域限定在循环语句块中。
2、表达式:表达式要访问的数组名或集合名等。或者是返回值为数组或集合的方法。