【流程控制】

目录

1、分支语句

1.1、if - else结构

1.2、switch-case结构

2、循环结构

2.1、for循环

2.2、while循环

2.3、do-while循环

3、break continue

3.1、break的使用

3.2、continue的使用

3.3、return的使用

3.4特殊流程控制语句说明


1、分支语句

1.1、if - else结构

1、if-else使用说明:

  • 条件表达式必须是布尔表达式(关系表达式或逻辑表达式)、布尔变量;

  • 语句块只有一条执行语句时,一对{}可以省略,但建议保留;

  • if-else语句结构,根据需要可以嵌套使用;

  • 当if-else结构是“多选一”时,最后的else是可选的,根据需要可以省略;

  • 当多个条件是“互斥”关系时,条件判断语句及执行语句间顺序无所谓当多个条件是“包含”关系时,“小上大下/ 子上父下”。

1.2、switch-case结构

注意: switch结构中的表达式,只能是如下的六种数据类型之一:byte、short、char、int、枚举类型(JDK5.0)、String类型(JDK7.0)

不能是:long,float,double,boolean

/*
分支结构之二:switch-case
​
1.格式
switch(表达式){
case 常量1:
    执行语句1;
    //break;
case 常量2:
    执行语句2;
    //break;
​
...
​
default:
    执行语句n:
    //break;
}
​
2.说明:
① 根据switch表达式中的值,依次匹配各个case中的常量。一旦匹配成功,进入相应case结构中,执行相关语句。
  当调用完执行语句后,则仍然继续向下执行其他case语句,直到遇到break关键字或末尾结束为止。
​
② break, 可以使用switch-case结构中,表示一旦执行到此关键字,就跳出switch-case结构。
​
③ switch结构中的表达式,只能是如下的六种数据类型之一:byte、short、char、int、枚举类型(JDK5.0)、String类型(JDK7.0)
④ case 之后之能声明常量。不能声明范围。
​
⑤ break关键字是可选的。
⑥ default:相当于if-else结构中的else。
            default 结构是可选的,而且位置是灵活的。
*/
​
class SwitchTest{
    public static void main(String[] args){
​
        int number = 2;
        switch(number){
        case 0:
            System.out.println("zero");
            break;
        case 1:
            System.out.println("one");
            break;
        case 2:
            System.out.println("twe");
            break;
        case 3:
            System.out.println("three");
            break;
        default:
            System.out.println("other");
            break;
        }
​
        //*********************************
        //运行报错,不能运行boolean类型
/*      boolean isHandSome = true;
        switch(isHandSome){
        case true:
            System.out.println("可乐吗??");
            break;
        case false:
            System.out.println("薯条吗??");
            break;
        default:
            System.out.println("输入有误!!!");
        }
*/
        //*********************************
        String season= "summer";
        switch(season) {
        case"spring":
            System.out.println("春暖花开");
            break;
        case"summer":
            System.out.println("夏日炎炎");
            break;
        case"autumn":
            System.out.println("秋高气爽");
            break;
        case"winter":
            System.out.println("冬雪皑皑");
            break;
        default:
            System.out.println("季节输入有误");
            break;
        }
​
        //**************************************
        //运行报错
/*      int age = 10;
        switch(age){            
        case age > 18:
            System.out.println("成年了");
            break;
        default:
            System.out.println("未成年");
        }   */
    }
}
​

2、循环结构

在某些条件满足的情况下,反复执行特定代码的功能

分类:

  • for 循环

  • while 循环

  • do-while 循环

2.1、for循环

语法格式
for(①初始化部分;②循环条件部分;④迭代部分){
            ③循环体部分;
}
​
​
执行过程:①-②-③-④-②-③-④-②-③-④-.....-②
​
​
说明:
②循环条件部分为boolean类型表达式,当值为false时,退出循环
①初始化部分可以声明多个变量,但必须是同一个类型,用逗号分隔
④可以有多个变量更新,用逗号分隔
​

2.2、while循环

①初始化部分
while(②循环条件部分){
    ③循环体部分;
    ④迭代部分;
}
​
  • 注意不要忘记声明④迭代部分。否则,循环将不能结束,变成死循环。

  • for循环和while循环可以相互转换

public class WhileLoop {
    public static void main(String args[]) {
        int result = 0;
        int i= 1;
        while(i<= 100) {
            result += i;
            i++;
        }
        System.out.println("result="+ result);
    }
}
​

2.3、do-while循环

do-while循环结构的使用
一、循环结构的四个要素
① 初始化条件
② 循环条件 --->是boolean类型
③ 循环体
④ 迭代条件
​
二、do-while循环的结构
①
do{
    ③;
    ④;
}while(②);
​
执行过程:① - ③ - ④ - ② - ① - ③ - ④ - ... - ②
 
说明:do-while循环至少执行一次循环体。
​

3、break continue

3.1、break的使用

break语句用于终止某个语句块的执行
​
{    
    ......
    break;
    ......
}
break语句出现在多层嵌套的语句块中时,可以通过标签指明要终止的是哪一层语句块
​
label1: {   ......
label2:     {   ......
label3:         {   ......
                    break label2;
                    ......
                }
            }
        }

3.2、continue的使用

2、continue的使用

  • continue 语句

  • continue只能使用在循环结构中

  • continue语句用于跳过其所在循环语句块的一次执行,继续下一次循环

  • continue语句出现在多层嵌套的循环语句体中时,可以通过标签指明要跳过的是哪一层循环

3.3、return的使用

return:并非专门用于结束循环的,它的功能是结束一个方法。当一个方法执行到一个return语句时,这个方法将被结束。 与break和continue不同的是,return直接结束整个方法,不管这个return处于多少层循环之内。

3.4特殊流程控制语句说明

  • break只能用于switch语句和循环语句中。

  • continue 只能用于循环语句中。

  • 二者功能类似,但continue是终止本次循环,break是终止本层循环。

  • break、continue之后不能有其他的语句,因为程序永远不会执行其后的语句。

  • 标号语句必须紧接在循环的头部。标号语句不能用在非循环语句的前面。

  • 很多语言都有goto语句,goto语句可以随意将控制转移到程序中的任意一条语句上,然后执行它。但使程序容易出错。Java中的break和continue是不同于goto的

/*
break和countinue关键字的使用
                使用范围            循环中使用的作用(不同点)   相同点
break:          switch-case         结束当前循环              关键字后面不能声明执行语句
                循环结构中
​
​
countinue:      循环结构中           结束当次循环              关键字后面不能声明执行语句
​
*/
class BreakContinueTest{
    public static void main(String[] args){
        
        for(int i = 1;i <= 10;i++){
            if(i % 4 == 0){
            //  break;  //1、2、3
                continue;   //1、2、3、5、6、7、9、10
            //  System.out.println("该吃饭了!!!");
            }
        //  System.out.println(i);
        }
        //********************************
        for(int i = 1;i <= 4;i++){
            
                for(int j = 1;j <= 10; j++){
                    if(i % 4 == 0){
                //      break;  //默认跳出包裹此关键字最近的一层的循环
                        continue;
                    }
                    System.out.print(j);
                }
                System.out.println();
        }
    }
}
​
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值