顺序结构
从入口函数(main)开始执行,依次从上到下执行。正常程序都是如此。
分支结构
if-else
- if-else语句格式—1
if(true){
执行语句1;
}
- if-else语句格式—2
if(表达式1){
执行语句1;
}else{ //这里是else
执行语句3;
}
- if-else语句格式—3
if(表达式1){
执行语句1;
}else if(表达式1){ //注意这里是else if
执行语句2;
}else{ //这里是else
执行语句3;
}
表达式1的结果值必须是布尔型,如果是true,那么就执行大括号里面的执行语句1,如果是false,就继续下一个表达式,如果满足就执行后面大括号里面的执行语句。如果没有一个满足的,就执行最后一个else大括号里面的执行语句。
注意:执行if-else语句时,一定会选择其中的一个路径执行,而且也仅会选择其中的一个路径执行。
switch
- Switch语句格式(1种)
switch(变量){
case 常量1:
语句1;
break;
case 常量2:
语句2;
break;
……
case 常量1:
语句1;
break;
default :
语句;
break;
}
注意:每个case语句必须加break语句,如果不加,依次往下执行了。default是可选的(可有可无),且位置是不限制的,放哪里都可以。
重点:变量类型只能是:char,byte,short,int,枚举,String(必须是jdk1.7以上)
循环结构
for
for(初始化条件;循环条件;迭代语句){
代码块; //循环体
}
执行顺序是:
注意:for循环中如果嵌套if语句,从上到下依次执行,如果有一个满足,执行完则跳出语句。
例子:
public class ForTest(){
public staitc void main(String arg[]){
for(int i=0;i<=100;i++){
System.out.println(i);
}
}
}
while
初始化语句;
whlie(循环条件){
代码块; //循环体
迭代语句;
}
执行顺序是:和for循环一样。
do-while
初始化语句;
do{
代码块; //循环体
迭代语句
}while(循环条件)
执行顺序:
do-while的循环体至少会被执行一次。
break关键字
break语句是用在switch和循环结构中,表示结束”当前”循环结构。
public class Demo0206 {
public static void main(String args[]) {
for (int a = 1; a < 5; a++) {
if (a == 2) {
break;
}
System.out.print(a+" ");
}
}
}
执行结果:1
跳出当前循环,就是循环结构不再执行了。
continue关键字
continue语句只能用在循环结构中,表示结束”当次”循环。
public class Demo0206 {
public static void main(String args[]) {
for (int a = 1; a < 5; a++) {
if (a == 2) {
continue;
}
System.out.print(a+" ");
}
}
}
执行结果:1 3 4
跳出当次循环,循环结构还是要继续执行的。
带标号的语句块
语句块标号:
{
语句组;
}
语句块标号:
循环结构
其中break可以使用在两种格式中,表示跳出当前语句块。用法为:break 语句块标号;
其中continue只可以使用在格式2中,表示跳出当次语句块。用法为:continue 语句块标号;