运算符;if分支结构

(1)算术运算符

    (2)关系运算符

    (3)逻辑运算符(短路运算符):  &&,||,!

    (4)赋值运算符

    (5)字符串拼接符:+

(6)三目运算符    条件表达式? 值1:值2

 

运算符之算数运算符:

+,-,*,/,%,++/--

 

    被除数为正,取余结果一定为正

    被除数为负,取余结果一定为负。

 

运算符之关系运算符:

    >,>=,<,<=,==,!=

    用来判断条件是否成立。一般都用在分支结构或循环结构中

运算符之逻辑运算符:(短路运算符)

     当有两个条件以上进行判断是否成立时,需要使用

     逻辑运算符。即与,或,非

     &&,||,!

     数学中:判断a是否大于1并且小于3时,

           写法如下:   1<a<3

     java语言中,没有上述写法,需要使用&&

           写法如下:    a>1&&a<3

                 a<3&&a>1

     &&(与):用于判断两个条件是否同时成立

     ||(或):用于判断是否有条件成立。

     !:    用于条件的否定

 

     &&    a>b  &&  c>d     -->结果

           true     true       true

      true     false      false

      false    true       false

      false    false      false

     ||    a>b  ||  c>d     -->结果

           true     true       true

      true     false      true

      false    true       true

      false    false      false

     !     a>b

            true---------》false

       false--------》true

 

     &&: 全真为真,一假则假

     ||: 一真即真,全假则假

     !: 非真即假,非假即真

     

    当使用&&或者||时,第一个条件能确定结果时,

      就不会执行第二个条件,这种行为可视为短路

      现象。

 

      单个符号的 &(与)  |(或) 没有短路现象。

运算符之赋值运算符:

      =,赋值运算,给前面的变量赋值

 

      扩展赋值运算符

      +=,-=,*=,/=,%=。

      a+=1相当于 a = a + 1

      a-=b相当于 a = a - b;

      a*=b相当于 a = a * b;

      a/=b相当于 a = a / b;

      a%=b相当于 a = a % b;

扩展赋值运算符,类型不一致时

  会自动转成符号左边的类型

  int  m = 10;

  double s = 5.5;

  m+=s;//相当于 m = (int)(m+s)

运算符之字符串拼接符号,

      +

      当+前后,只要有一个是字符串类型,就做拼接操作

      拼接后的结果是字符串类型。

      如:

      int a = 1;

      int b = 2;

      String str = "3";

      String result = a+b+str;

      System.out.println(result);//"33"

      result = str+a+b;

      System.out.println(result);//"312"

      result = a+str+b;

      System.out.println(result);//"132"

      System.out.println(1+2+a+str+b+3);//"4323"

      System.out.println(1+2+a+"3"+a*b+str);//"4323"

运算符之三目运算符(三元运算符)

      关系运算与逻辑运算统称为条件运算

 

       变量类型 变量= 条件表达式?值1:值2;

       变量类型:需要与值1或值2的类型相同。

                而值1与值2的类型要么相同,

要么就可以自动转换。

 

程序的运行顺序:

  顺序结构:从程序开始,到程序结束

  分支结构:在顺序结构基础上,根据条件进行选择执行方向。

  循环结构:在顺序结构基础上,根据条件进行多次执行相同的或相似的代码

 

分支结构:根据条件的成立与否,选择执行方向。

 

  (一)if分支结构:

      语句1;

      if(条件表达式){

          代码块//条件成立时,执行的逻辑

      }

      语句2;

      执行逻辑:执行完语句1后,碰到if,一定会执行

               条件表达式,结果为true,就执行代码块,

       然后再执行语句2。

       结果为false,就跳过代码块,执行语句2

      

 

      if(条件表达式){

   代码块1//  条件成立时执行此代码块

      }else{

   代码块2//  条件不成立时执行此代码块

      }

 

      执行逻辑:当程序执行到if时,一定会执行条件表达式进行判断

                结果为true,就执行代码块1.

结果为false,跳过代码块1,执行代码块2

 

 

    

     if(条件1){

          代码块1;

     }else if(条件2){

  代码块2

     }else if(条件3){

          代码块3

     }else{

          代码块4

     }

 

     执行逻辑:程序执行到if时,一定会执行条件1,进行判断

            结果为true,执行代码块1。

       结果为false,执行条件2,进行判断

       结果为true,执行代码块2.

       结果为false,执行条件3,进行判断

       ............

 

     当if语句中含有else{}部分时,一定会执行其中一条分支

     没有else{}部分时,有可能一条分支都不执行。

猜你喜欢

转载自blog.csdn.net/K_KingoneTen/article/details/81161819