(复习使用)Java基础03 - 控制结构

介绍

        程序的流程控制是什么?

        是用来决定程序是如何执行的,主要有三大流程控制语句:

        顺序控制、分支控制、循环控制

顺序控制

        程序从上往下准行的执行,中间没有任何的循环和跳转。

   

分支控制

        分支控制主要分为 if - else 语句构成的单分支、双分支、多分支、嵌套分支结构

        以及switch 分支结构

        首先我们来看 if、else 、else if 关键字够成的分支结构

单分支if

        基本语法:

     if(条件表达式){

                执行代码块;                // 里面输入执行该分支的逻辑

        }   

        使用说明:

               当条件表达式为 true 时,就会执行 {         } 里的语句,为false则不执行

                特别注意,如果{        }里只有一条语句,是可以不用{ }

                如下

if(true) System.out.println("进入单分支if语句");

                但最好还是加上{        },便于可读。                   

        对应的流程图:

双分支if else

        基本语法:

        if(条件表达式){

                执行代码块1;

        }else{

                执行代码块2;

        }

        使用说明:

                 当条件表达式为 true 时,就会执行代码块1的语句,为false则执行代码块2的语句

                依旧当{        }中只有一条语句{        }可以省略

         对应的流程图:

 多分支if-else if

        基本语法:

   if(条件表达式1){

                执行代码块1;

        }else if(条件表达式2){

                执行代码块2;

        }else if(条件表达式3){

                执行代码块3;

        }

        ... ...

        else{

                执行代码块n;

        }

        对于多分支值得说明两点

        第一:多分支可以没有else,但是如果没有else并且所有的条件表达式都不成立时,多分支结构的执行入口都没有,此时执行多分支结构下面的语句

        第二:如果有else,则当所有条件表达式都不成立时则默认执行else代码块

        

        对应流程图:

         其中对于表达式的判断,必须是表达式1为false,才能去判断表达式2

        如此循环直至找到对应的入口(如果没有入口则直接执行后续语句块)

        当然,一般来说多分支结构都会存在else的条件判断

嵌套分支

        基本语法:

        if(表达式1){

                if(表达式1-1){

                        if(表达式1-1-1){

                                

                        }else if(表达式1-1-2){

                                

                        }

                }else{

                        ...  if - else 

                }

        }

        总的来说,就是在判断结构中再加判断(里面加入的条件分支结构可以是任一种分支结构)

        打个比方,某个数字a        第一次判断是否大于20,如果成立则进一步判断是否大于50... ...

        嵌套循环:建议不要超过三层(超过三层可读性太差)

       对应流程图:

switch 分支结构 

        基本语法:

switch(表达式){

        case 常量1 :

        break;

        case 常量2 :

        break;

        ...

        default  语句块;

        break;

}

        switch分支结构使用要注意以下几点

        1. 表达式的数据类型应该与case后常量数据类型一致或者是可以自动转换的类型

        2. switch(表达式) 中表达式的返回值必须是byte、short、int、char、enum、String

        3. 如果没写break就会从匹配到的语句开始顺序执行(中间不进行判断直接穿透执行)

        流程图如下:

        从执行流程上来看 switch分支结构和 if - else if分支结构较为相似

        那么具体什么情况应该选取?

        1.  判断的具体数值不多,而且符合switch的六种类型建议switch

        2.  其他情况如 区间判断等 则用 if - else if更好

循环控制       

for循环

        基本语法:

        for(循环变量初始化 ; 循环条件 ; 循环变量迭代){

                循环操作

        }

        循环执行的流程:  

         使用细节和注意事项:

        1. for(;循环判断条件;) 中的初始化和变量迭代可以写到其它地方,但是两边的分号不能省略

        2. 循环初始值可以有多条初始化语句,但要求类型一样,并且中间用逗号隔开

while 循环控制

        基本语法:

       循环变量初始化;

       while(循环条件){

                循环体;

                循环变量迭代;

        }

         本质上跟for循环没有区别,流程图略

do..while 循环控制

        基本语法:

        循环变量初始化;

        do{

                循环体;

                循环变量迭代;

        }while(循环条件);

        流程图:

        

                do-while循环跟while循环相对最大区别:

                        do-while循环至少执行了一次 ,是先执行,再判断

                        而while循环则是先判断再执行

                注意:do-while循环最后一个分号不能忘记

多重循环控制

        循环里面嵌套循环

        举例

for(int i = 0;i < 7; i++){        //外层循环7次
    for(int j = 0;j < 2; j++ ){   //内层循环2次
        // 循环体
    }
}

        但从实质上讲,内存循环就是外层循环的循环体

        只要当内存循环执行结束才能跳出外层的一层循环,继续进行下一轮循环

        

        建议:多重循环一般两层,最多不要超过三层

跳转控制语句

break

        说明:用来终止某个语句块的执行,一般用在switch分支结构 或 循环当中

        使用细节:

                break 如果出现在多层嵌套循环中,可以通过 标签 来指明推出那一层循环

               最后输出结果        j = 4, i = 3

continue

        说明:

                1. continue 用来结束本次循环,继续执行下次循环

                2. continue 出现在嵌套循环中也可以用过跟break - label的语法,去选择跳过那层循环

return

        说明:

                1. return一般使用在方法里面,表示跳出方法

                2. 如果在main方法中使用,则直接结束程序 

 

总结

思维导图(点击进入)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了复习数据结构Java编程语言,你可以按照以下步骤进行: 1. 确保你已经掌握了Java SE的基础知识。这包括Java的语法、数据类型、流程控制语句、面向对象编程等。如果你需要巩固这些基础知识,可以通过阅读相关的教材或参加在线课程来加强你的理解。 2. 接下来,你可以进一步了解JDBC(Java Database Connectivity)。JDBC是Java用于与数据库进行交互的标准API。你可以学习如何连接到数据库、执行SQL查询和更新操作,并了解如何处理结果集。有关JDBC的更多信息,可以查阅Java官方文档或参考相关的教程。 3. 数据结构中的树形结构是非常重要的一部分。确保你对树的概念和常见的树结构(如二叉树、AVL树、B树等)有一个清晰的理解。你可以阅读关于树的教材或参考在线资源来加深你对树的理解。 4. 如果你想进一步学习数据库建模和设计,可以初步了解PowerDesigner数据库建模工具的使用。这个工具可以帮助你设计和管理数据库模型,并生成相应的DDL脚本。 5. 最后,了解UML(Unified Modeling Language)统一建模语言也是非常有帮助的。UML是一种用于描述和设计软件系统的标准化语言。了解UML的基本概念和常用的建模图形(如类图、时序图、用例图等)将使你能够更好地理解和交流软件系统的设计。 通过按照上述步骤进行复习,你将能够深入了解数据结构Java编程,并为进一步的学习和实践打下坚实的基础。记得多进行实践和练习,以加深对知识的理解和应用。祝你学习顺利!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值