Java中的选择语句和循环语句

一、选择语句

 

关于java语言当中的if语句,属于选择结构,if语句又被称为分支语句/条件控制语句:

  1.if语句的语法结构:四种编写方式

        第一种:

             if(布尔表达式){

                         java语句;

                         java语句;

                         …….;

              }

        第二种:

            if(布尔表达式){

                   java语句;

                   java语句;

                   …….;

             }else{

                  java语句;

                  java语句;

                  …….;

                }

           第三种:

           if(布尔表达式){

               java语句;

               java语句;

               …….;

           }else if(布尔表达式){

                   java语句;

                   java语句;

                  …….;

              }else if(布尔表达式){

                        java语句;

                  java语句;

                  …….;

              }……

       第四种:

           if(布尔表达式){

               java语句;

               java语句;

               …….;

           }else if(布尔表达式){

                   java语句;

                   java语句;

                  …….;

              }else if(布尔表达式){

                        java语句;

                  java语句;

                  …….;

              }else{

                  java语句;

                  java语句;

                  ……

           }

  2.重点:对于java中的if语句来说,只要有一个分支执行,整个if语句全部结束。

  3.注意:以上的第二种编写方式和第四种编写方式都带有else分支,这两种方式可以100%保证会有分支执行

  4.”所有的控制语句“都是可以嵌套使用的,只要合理嵌套使用。

  5.if语句的分支中只有一条java语句的话,大括号可以省略。但不建议这么写。

关于switch语句;

 1.switch也属于选择结构,也是分支语句

 2.switch语句的语法结构:

    一个比较完整的switch语句应该这样编写:

       switch(int或String类型的字面值或变量){

          case int或String类型的字面值或变量:

                       java语句;

                       break;

          case int或String类型的字面值或变量:

                       java语句;

                       break;

           case int或String类型的字面值或变量:

                       java语句;

                       break;

           case int或String类型的字面值或变量:

                       java语句;

                       break;

            default :

                       java语句;

                       break;

     }

 3.switch语句的执行原理:

       switch后面的小括号当中的”数据“和case后面的”数据“进行一一匹配,匹配成功的分支执行。按照自上而下的顺序依次执行。

 4.匹配成功的分支执行,分支当中最后有”break;"语句的话,整个switch语句终止。

 5.匹配成功的分支执行,分支当中没有“break;"语句的话,直接进入下一个分支执行(不进行匹配),这种现象被称为case穿透现象。【提供break;语句可以避免穿透】

 6.所有分支都没有匹配成功,当有default的语句的话,会执行default当中的程序

 7.switch后面和case后面只能是int或String类型的数据,不能探测其他类型的数据。

  *当然byte,short,char也可以直接写到switch和case后面,因为他们可以进行自动类型转换,byte,short,char可以自动转换成int类型。

  *JDK6版本的,switch和case后面只能探测int类型

  *JDK7之后包括7版本在内,引入新特性,switch关键字和case关键字后面可以探测int或String类型的数据。

8.case可以合并:

  int i=1;

 switch(i){

     case 1: case 2: case 3: case 4:

     System.out.println("Test");

 9.long x = 100L;

    switch(x){}               //编译报错

    //解决编译报错

    long x = 100L;

    switch((int)x){}

二、循环语句

  

1.循环结构:

   在程序当中总有一些需要反复的/重复的执行的代码,假设没有循环结构,那么这段需要重复

执行的代码自然是需要重复编写的。代码无法得到重复使用,所以多数编程语言都是支持循环

结构的。将来把需要反复执行的代码片段放到”循环体“,在联合”计数器“,共同控制这段

需要反复执行的代码。

2.基本上所有的编程语言支持的循环结构包括三种:

   *for循环

   *while循环

   *do….while循环

关于for循环:

   1.语法结构:

      for(初始化表达式;布尔表达式;更新表达式){

          //需要执行的代码片段【循环体:由java语句构成】

     }

 2.for循环的执行过程/执行原理?

      ⅰ:初始化表达式、布尔表达式、更新表达式都不是必须的!【但是两个分号是必须的·】

      ⅱ:初始化表达式最先执行,并且在整个for循环当中之执行一次

      ⅲ:布尔表达式必须是true/false,不能是其他值

      ⅳ:for的执行过程:

             *先执行初始化表达式,并且该表达式只执行一次

             *判断布尔表达式的结果是true还是false

                    ——布尔表达式true

                            *执行循环体

                            *执行更新表达式

                            *判断布尔表达式的结果是true还是false

                                 ——布尔表达式的结果是true  

                                         *执行循环体

                                         *执行更新表达式

                                         *判断布尔表达式的结果是true还是false

                                         ……

                                 ——布尔表达式的结果是false

                   ——布尔表达式false

                                    循环结束

3.for循环当中的变量的作用域是仅限于当前for循环内部使用

4.循环体中可以编写其他的控制语句,控制语句可以嵌套使用

5.嵌套使用时,即使循环体当中是一个for循环语句将,不要将这个for特殊化,它也是一个普通的

 for循环。

6.内层循环中的变量名和外层循环中的变量名不能重名。

关于while循环:

   1.语法结构:

        while(布尔表达式){

             循环体:

         }

    2.while循环的执行原理:

         先判断布尔表达式的结果是:

            *true

               —执行循环体

                   *判断布尔表达式的结果:

                        *true

                           —执行循环体

                               *判断布尔表达式的结果是:

                                    *true

                                    *false

                        *false

                            —循环结束

            *false

                —循环结束

    3.while循环的循环次数:

           0~N次

           注意:while循环的循环体可能执行次数为0次

关于do…while循环:

 1.语法结构:

      do{

           循环体;

       }while(布尔表达式);

 2.do…while循环的执行原理

      布尔表达式为真则循环,为假则退出循环

 3.do…while循环的执行次数:

       do…while循环的循环体代码片段执行次数是:1-N次【至少一次】

 4.注意:do…while循环语句最终有一个“分号”。

三、break语句和continue语句

关于break语句:

  1.break是java语言当中的关键字,被翻译为“中断/折断”

  2.break+";"可以成为一个单独的完整的java语句:break;

  3.break语句使用在switch语句当中,用来终止switch语句执行

  4.break语句同样可以使用在循环体语句当中,用来终止循环的执行

  5.break;语句使用在for while do…while 循环体语句当中用来跳出循环,终止循环的执行。

    因为当程序循环到某个条件的时候,后续的循环没必要执行了,在执行也是耗费资源,所以

    可以终止循环,这样可以提高程序的执行效果。

6.在默认情况下:break语句终止的是它最近的循环语句。当然也可以指定终止某个循环。

  需要给循环起名,采用这种语法:break 循环名称;

关于continue语句:

  1.continue表示:继续/go on/下一个

  2.continue也是一个continue关键字加一个分号构成一个单独的完整的java语句,主要出现循环体语句当中用来控制循环的执行

  3.break和continue的区别?

     *break表示循环不执行了

     *continue表示直接进入下一次循环继续执行。

例:  for(int i=0;i<10;i++){

              if(i==5){

                   break;

              }

          System.out.println("i="+i);              //0 1 2 3 4

       }

 

       for(int i=0;i<10;i++){

            if(i==5){

              continue;只要这个语句执行,当前本次循环停止,直接进入下一次循环“继续”执行

            }

         System.out.println("i="+i);             //0 1 2 3 4 6 7 8 9

       }

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值