Java基础语法(二 )

五、运算符

  *算术运算符
  *赋值运算符
  *关系运算符
  *逻辑运算符
  *位运算符
  *三目运算符

  算术运算符

  

    *+,-,*,/都是比较简单的操作
    *+的几种作用:
      加法
      正数
      字符串连接符
    *除法的时候要注意一个问题:
      整数相除,只能得到整数
      要想得到小数,可以*1.0

  赋值运算符

    符号:
      = , +=, -=, *=, /=, %=
      =为基本的赋值运算符,其他的为扩展的赋值运算符

      = 赋值号

      +=加赋值
      把左边和右边的结果赋值给左边。
      注意:左边不能是常量

  关系运算符

     

      注意:
        1:比较运算符的结果都是boolean型,也就是要么是true,要么是false。1:比较运算符的结果都是boolean型,也就是要么是true,要么是false。
        2:比较运算符“==”不能误写成“=” 。

  逻辑运算符

    

    逻辑运算符用于连接布尔型表达式,在Java中不可以写成3<x<6,应该写成x>3 & x<6 。
    “&”和“&&”的区别:
      单&时,左边无论真假,右边都进行运算;
      双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
    “|”和“||”的区别同理,双或时,左边为真,右边不参与运算。
    异或( ^ )与或( | )的不同之处是:当左右都为true时,结果为false。

  位运算符

         

        

        位运算符是直接对二进制进行运算。

  三目运算符

     格式:

      *(关系表达式)?表达式1:表达式2;
      *如果条件为true,运算后的结果是表达式1;
      *如果条件为false,运算后的结果是表达式2;
      *表达式1和表达式2的最终结果是一个明确的值

六、流程控制语句

    *顺序结构
    *选择结构
    *循环结构

  顺序结构

    概述:

      *是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。
      *写在前面的先执行,写在后面的后执行。

  顺序结构图

          

  选择结构

    概述:

      *选择结构有特定的语法规则,代码要执行具体的逻辑运算进行判断,逻辑运算的结果有两个,所以产生选择,按照不同的选择执行不同的代码。
      *Java语言提供了两种选择结构语句
        if语句

            if(关系表达式) {
                语句体;
            }
            执行流程:
              首先判断关系表达式看其结果是true还是false
              如果是true就执行语句体
              如果是false就不执行语句体

            图解:

            

            if(关系表达式) {
                语句体1;
            }else {
                语句体2;
            }
            执行流程:
              首先判断关系表达式看其结果是true还是false
              如果是true就执行语句体1
              如果是false就执行语句体2

            图解:

              

              if(关系表达式1) {
                语句体1;
            }else if (关系表达式2) {
                语句体2;
            }
            …
            else {
                语句体n+1;
            }
            执行流程
              首先判断关系表达式1看其结果是true还是false
              如果是true就执行语句体1
              如果是false就继续判断关系表达式2看其结果是true还是false
              如果是true就执行语句体2
              如果是false就继续判断关系表达式…看其结果是true还是false
              …
              如果没有任何关系表达式为true,就执行语句体n+1。

            图解:

                 


        switch语句

            switch(表达式) {
              case 常量值1:
                  语句体1;
                  break;
              case 常量值2:
                  语句体2;
                  break;
              …
              default:
                  语句体n+1;
                  break;
             }
            概述:
              switch表示这是switch语句
                表达式的取值:byte,short,int,char,
                JDK7以后可以是String
              case后面跟的是要和表达式进行比较的值
              语句体部分可以是一条或多条语句
              break表示中断,结束的意思,可以结束switch语句
              default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。
            流程:
              首先计算出表达式的值
              其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。
              最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

            图解:

                

                注意:

                  case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
                  default可以省略。一般不建议。除非判断的值是固定的。
                  break可以省略,一般不建议。
                  default的位置可以出现在switch语句任意位置。
                  switch语句的结束条件
                      遇到break
                      执行到程序的末尾

    使用场景:

      if语句使用场景:
        针对结果是boolean类型的判断
        针对一个范围的判断
        针对几个常量值的判断
      switch语句使用场景:
        针对几个常量值的判断

  循环结构

    概述:

     循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句体,当反复执行这个循环语句体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。

    组成:

     初始化语句:
        一条或者多条语句,这些语句完成一些初始化操作。
     判断条件语句:
        这是一个boolean 表达式,这个表达式能决定是否执行循环语句体。
     循环体语句:
        这个部分是要被反复执行的语句,也就是我们要多次做的事情。
     控制条件语句:
        这个部分在一次循环执行结束后,下次判断循环条件是否成立前,会改变用于判断循环变量的值,使得循环在合适的时候结束。

    for循环语句

        格式:

        for(初始化语句;判断条件语句;控制条件语句) {
              循环体语句体;
        }

        执行流程:

        A:执行初始化语句
        B:执行判断条件语句,看其结果是true还是false
          如果是false,循环结束。
          如果是true,继续执行。
        C:执行循环体语句
        D:执行控制条件语句
        E:回到B继续

        图解:

        

        注意:

          判断条件语句的结果是一个boolean类型
          循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。建议永远不要省略。
          一般来说:有左大括号就没有分号,有分号就没有大括号

    while循环语句

        格式:

        基本格式:
          while(判断条件语句) {
            循环体语句体;
          }

        扩展格式:
          初始化语句;
          while(判断条件语句) {
            循环体语句体;
            控制条件语句;
          }

        图解:

          

    for循环和while循环的区别

        使用区别:

          控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。

        场景区别:

          for循环适合针对一个范围判断进行操作
          while循环适合判断次数不明确操作

    do…while循环语句格式

        基本格式

          do {
           循环体语句;
            }while(判断条件语句);

        扩展格式

         初始化语句;
         do {
          循环体语句;
          控制条件语句;
           } while(判断条件语句);

        图解:

            

    三种循环语句的区别及注意事项

        使用场景:

          do...while循环语句体至少会执行一次
          for循环和while循环只有在条件成立的时候才会执行循环语句体

        推荐使用:

          对固定范围内的循环推荐使用for
          对未知的范围内的循环推荐使用while
          对至少需要执行一次循环语句体的推荐使用do...while
          如下代码是死循环
            while(true){ }
            for( ; ; ){ }

    跳转控制语句

        break 中断

        break的作用:
          跳出单层循环
        break的使用场景:
          在选择结构switch语句中
          在循环语句中
          离开使用场景的存在没有任何意义

        continue 继续

        continue的作用:
          continue 退出本次循环
        continue的使用场景:
          在循环语句中
          离开使用场景的存在是没有意义的

        return 返回

        return关键字不是为了跳转出循环体,更常用的功能是结束一个方法,也就是退出一个方法。跳转到上层调用的方法。
        结束循环其实是结束了main方法

猜你喜欢

转载自www.cnblogs.com/ljlaction/p/9380567.html