精华内容
下载资源
问答
  • 执行顺序(结合性) ++、--、!、instanceof、new(type) 从右往左 运算等级2 =、*=、/=、%=、+=、-=、^=从右往左 运算等级15 <<=、>>=、>>>=、&=、|=从右往左 运算等级 16 ...

    运算符的优先级&执行顺序(结合性)

    ++、--、!、instanceof、new(type) 从右往左 运算等级2

    =、*=、/=、%=、+=、-=、^= 从右往左 运算等级15

    <<=、>>=、>>>=、&=、|= 从右往左 运算等级 16

     

    展开全文
  • 但是运行得到的结果: **a b true** ,表明条件运算符的运算顺序是按照从左至右的顺序。 ---------- 通过以上分析,我认为: 条件运算符(?:)的结合性是从右至左,而运算顺序是从左至右。 ---------- ...
  • Java运算符执行顺序

    千次阅读 2018-10-09 09:15:00
     2、 结合性是指运算符结合顺序,通常都是从左到右。从右向左的运算符最典型的就是负号,例如3+-4,则意义为3加-4,符号首先和运算符右侧的内容结合。  3、 instanceof作用是判断对象是否为某个类或接口...

    单目乘除为关系,逻辑三目后赋值

    单目:单目运算符+ –(负数) ++ -- 等 
    乘除:算数单目运算符* / % + - 
    为:位移单目运算符<< >> 
    关系:关系单目运算符> < >= <= == != 
    逻辑:逻辑单目运算符&& || & | ^ 
    三目:三目单目运算符A > B ? X : Y 
    后:无意义,仅仅为了凑字数 
    赋值:赋值=

       1、 该表中优先级按照从高到低的顺序书写,也就是优先级为1的优先级最高,优先级14的优先级最低。

      2、 结合性是指运算符结合的顺序,通常都是从左到右。从右向左的运算符最典型的就是负号,例如3+-4,则意义为3加-4,符号首先和运算符右侧的内容结合。

      3、 instanceof作用是判断对象是否为某个类或接口类型

      4、 注意区分正负号和加减号,以及按位与和逻辑与的区别

     

      其实在实际的开发中,不需要去记忆运算符的优先级别,也不要刻意的使用运算符的优先级别,对于不清楚优先级的地方使用小括号去进行替代,示例代码:      

    int m = 12;
       int n = m << 1 + 2;
       int n = m << (1 + 2); //这样更直观

    这样书写代码,更方便编写代码,也便于代码的阅读和维护。

     

     

    转载于:https://my.oschina.net/u/3908739/blog/2235369

    展开全文
  • 4.1 Java运算符基础与运算符结合

    千次阅读 2019-05-08 22:59:48
    Java运算符基础,一元运算符,二元运算符,移位关系运算符,逻辑运算符,运算符优先级,运算符结合

    运算符基础

    Java 是强类型语言,运算符优先级有着严格的规定,程序会严格按照优先级运行

    Java运算符图表

    运算符分类结合顺序运算符
    分隔符左结合. [] ( ) ; ,
    一元运算符右结合! ++ – - ~
    算术运算符左结合* / % + -
    移位运算符左结合<< >> >>>
    关系运算符左结合< > <= >= instanceof = = !=
    位运算符左结合& ^ |
    逻辑运算符左结合&& ||
    三目运算符右结合布尔表达式?表达式1:表达式2
    赋值运算符右结合= *= /= %= += -= <<= >>= >>>= &= *= |=

    上述表的优先级是从高到低,即分隔符优先级最高,赋值运算符优先级最低。优先级大家可以理解为小学数学中先括号,后乘除,再加减等等

    同一优先级运算符,运算次序怎么办?

    运算符结合性

    结合性:指一个操作数左右两边各有一个操作符时,先按照操作的优先级决定运算次序,如果优先级相同,再按照操作符的结合性来决定运算次序

    Java中各种运算符的结合性分为两种:

    • 左结合性

      自左向右,即先左后右

      例如:

      表达式:
      int result = x – y + z; 
      //则y应先与 “-”号结合,执行x-y运算,然后再执行 +z的运算。
      

      这种自左向右的结合方向就称为“左结合性”

    • 右结合性

      自右向左,即先右后左

      例如:

      int result = x = y = z = 10; 
      由于“=”的右结合性,应先执行z = 10; 再执行 y = z 再执行 x = y 运算
      

      这种自右向左的结合方向就称为“右结合性”

    java语言中大部分运算符也是从左到右结合的,只有一元运算符、赋值运算符和三元运算符例外

    展开全文
  • java运算符顺序

    2018-03-09 16:20:00
    优先级运算符分类结合顺序运算符由高到低分隔符左结合. [] ( ) ; ,一元运算符右结合! ++ -- - ~算术运算符移位运算符左结合* / % + - &lt;&lt; &gt;&gt; &gt;&gt;&gt;...


    优先级运算符分类结合顺序运算符

    分隔符左结合.    []     ( )     ;      ,
    一元运算符右结合!  ++     --     -   ~

    算术运算符

    移位运算符

    左结合*     /      %    +     -      <<   >>   >>>
    关系运算符左结合<     >     <=   >=   instanceof(Java 特有)   = =  !=
    逻辑运算符左结合! &&  ||  ~  &  |  ^ 
    三目运算符右结合布尔表达式?表达式1:表达式2
    赋值运算符右结合=  *=     /=  %=   +=   -=    <<= >>= >>>=  &=  *=  |=

     

    一、一元运算符

        因操作数是一个,故称为一元运算符。

    运算符含义例子
    -改变数值的符号,取反-x(-1*x)
    ~逐位取反,属于位运算符~x
    ++自加1x++
    --自减1x--

    ++x 因为++在前,所以先加后用。
    x++ 因为++在后,所以先用后加。

    二、算术运算符

        所谓算术运算符,就是数学中的加、减、乘、除等运算。因算术运算符是运算两个操作符,故又称为二元运算符。

    运算符含义例子
    +加法运算x+y
    -减法运算x-y
    *乘法运算x*y
    /除法运算x/y
    %取模运算(求余运算)x%y

        这些操作可以对不同类型的数字进行混合运算,为了保证操作的精度,系统在运算过程中会做相应的转化。数字精度的问题,我们在这里不再讨论。下图中展示了运算过程中,数据自动向上造型的原则。

     

     

        注:1、实线箭头表示没有信息丢失的转换,也就是安全性的转换,虚线的箭头表示有精度损失的转化,也就是不安全的。
          2、当两个操作数类型不相同时,操作数在运算前会子松向上造型成相同的类型,再进行运算。

    示例如下:


    三、移位运算符

       移位运算符操作的对象就是二进制的位,可以单独用移位运算符来处理int型整数。

    运算符含义例子
    <<左移运算符,将运算符左边的对象向左移动运算符右边指定的位数(在低位补0)x<<3
    >>"有符号"右移运算 符,将运算符左边的对象向右移动运算符右边指定的位数。使用符号扩展机制,也就是说,如果值为正,则在高位补0,如果值为负,则在高位补1.x>>3
    >>>"无符号"右移运算 符,将运算符左边的对象向右移动运算符右边指定的位数。采用0扩展机制,也就是说,无论值的正负,都在高位补0.x>>>3

     

    四、关系运算符

    Java具有完备的关系运算符,这些关系运算符同数学中的关系运算符是一致的。具体说明如下:

    运算符含义例子
    <小于x<y
    >大于x>y
    <=小于等于x<=y
    >=大于等于x>=y
    ==等于x==y
    !=不等于x!=y

    instanceof操作符用于判断一个引用类型所引用的对象是否是一个类的实例。操作符左边的操作元是一个引用类型,右边的操作元是一个类名或者接口,形式如下:

    obj instanceof ClassName      或者    obj instanceof InterfaceName

    关系运算符产生的结果都是布尔型的值,一般情况下,在逻辑与控制中会经常使用关系运算符,用于选择控制的分支,实现逻辑要求。

    需要注意的是:关系运算符中的"=="和"!="既可以操作基本数据类型,也可以操作引用数据类型。操作引用数据类型时,比较的是引用的内存地址。所以在比较非基本数据类型时,应该使用equals方法。


    七、赋值运算符

    赋值运算符是程序中最常用的运算符了,示例如下:

    运算符例子含义
    +=x+=yx=x+y
    -=x-=yx=x-y
    *=x*=yx=x*y
    /=x/=yx=x/y
    %=x%=yx=x%y
    >>=x>>=yx=x>>y
    >>>=a>>>=yx=x>>>y
    <<=a<<=yx=x<<y
    &=x&=yx=x&y
    |=x|=yx=x|y
    ^=x^=yx=x^y
    优先级运算符分类结合顺序运算符

    分隔符左结合.    []     ( )     ;      ,
    一元运算符右结合!  ++     --     -   ~

    算术运算符

    移位运算符

    左结合*     /      %    +     -      <<   >>   >>>
    关系运算符左结合<     >     <=   >=   instanceof(Java 特有)   = =  !=
    逻辑运算符左结合! &&  ||  ~  &  |  ^ 
    三目运算符右结合布尔表达式?表达式1:表达式2
    赋值运算符右结合=  *=     /=  %=   +=   -=    <<= >>= >>>=  &=  *=  |=

     

    一、一元运算符

        因操作数是一个,故称为一元运算符。

    运算符含义例子
    -改变数值的符号,取反-x(-1*x)
    ~逐位取反,属于位运算符~x
    ++自加1x++
    --自减1x--

    ++x 因为++在前,所以先加后用。
    x++ 因为++在后,所以先用后加。

    二、算术运算符

        所谓算术运算符,就是数学中的加、减、乘、除等运算。因算术运算符是运算两个操作符,故又称为二元运算符。

    运算符含义例子
    +加法运算x+y
    -减法运算x-y
    *乘法运算x*y
    /除法运算x/y
    %取模运算(求余运算)x%y

        这些操作可以对不同类型的数字进行混合运算,为了保证操作的精度,系统在运算过程中会做相应的转化。数字精度的问题,我们在这里不再讨论。下图中展示了运算过程中,数据自动向上造型的原则。

     

     

        注:1、实线箭头表示没有信息丢失的转换,也就是安全性的转换,虚线的箭头表示有精度损失的转化,也就是不安全的。
          2、当两个操作数类型不相同时,操作数在运算前会子松向上造型成相同的类型,再进行运算。

    示例如下:


    三、移位运算符

       移位运算符操作的对象就是二进制的位,可以单独用移位运算符来处理int型整数。

    运算符含义例子
    <<左移运算符,将运算符左边的对象向左移动运算符右边指定的位数(在低位补0)x<<3
    >>"有符号"右移运算 符,将运算符左边的对象向右移动运算符右边指定的位数。使用符号扩展机制,也就是说,如果值为正,则在高位补0,如果值为负,则在高位补1.x>>3
    >>>"无符号"右移运算 符,将运算符左边的对象向右移动运算符右边指定的位数。采用0扩展机制,也就是说,无论值的正负,都在高位补0.x>>>3

     

    四、关系运算符

    Java具有完备的关系运算符,这些关系运算符同数学中的关系运算符是一致的。具体说明如下:

    运算符含义例子
    <小于x<y
    >大于x>y
    <=小于等于x<=y
    >=大于等于x>=y
    ==等于x==y
    !=不等于x!=y

    instanceof操作符用于判断一个引用类型所引用的对象是否是一个类的实例。操作符左边的操作元是一个引用类型,右边的操作元是一个类名或者接口,形式如下:

    obj instanceof ClassName      或者    obj instanceof InterfaceName

    关系运算符产生的结果都是布尔型的值,一般情况下,在逻辑与控制中会经常使用关系运算符,用于选择控制的分支,实现逻辑要求。

    需要注意的是:关系运算符中的"=="和"!="既可以操作基本数据类型,也可以操作引用数据类型。操作引用数据类型时,比较的是引用的内存地址。所以在比较非基本数据类型时,应该使用equals方法。


    七、赋值运算符

    赋值运算符是程序中最常用的运算符了,示例如下:

    运算符例子含义
    +=x+=yx=x+y
    -=x-=yx=x-y
    *=x*=yx=x*y
    /=x/=yx=x/y
    %=x%=yx=x%y
    >>=x>>=yx=x>>y
    >>>=a>>>=yx=x>>>y
    <<=a<<=yx=x<<y
    &=x&=yx=x&y
    |=x|=yx=x|y
    ^=x^=yx=x^y
    展开全文
  • Java运算符执行顺序总结

    千次阅读 2020-06-22 17:30:35
    自增和比较符的执行顺序 加自己的运算符与等于号 简介 单目:单目运算符 + – (负数) ++ -- 等 乘除:算数单目运算符* / % + - 移位:位移单目运算符<< >> 关系:关系单目运算符> < >= &...
  • java运算符结合

    2020-10-11 18:34:55
    运算符的结合性指同一优先级的运算符在表达式中操作的组织方向, 即: 当一个运算对象两侧运算符的优先级别相同时, 运算对象与运算符的结合顺序java 语言规定了各种运算符的结合方向( 结合性) 。大多数运算符结合...
  • Java 运算符 顺序

    2019-10-02 13:08:10
    结合性(与操作数) 目数 说明 1 . 点 从左到右 双目 ( ) 圆括号 从左到右 [ ] 方括号 从左到右 ...
  • java运算符优先级记忆口诀

    千次阅读 2017-11-27 10:45:05
    java运算符优先级记忆口诀
  • Java运算符括号与运算符级别 前言 今天重新拜读java基础核心卷一,发现这个–括号与运算符级别需要总结一下,总会能用到总结如下。 运算符优先级 如果不使用圆括号, 就按照给出的运算符优先级次序进 行计算。同...
  • 运算符 结合性 1 ()[] 从左到右 2 ! +(正) -(负) ~ ++ – 从右到左 3 * / % 从左到右 4 +(加) -(减) 从左到右 5 << >> >>> 从左到右 6 < <= > >= instanceof 从...
  • Java运算符及运算符的优先级

    千次阅读 2020-09-29 09:19:50
    可以和算术运算符结合成复合赋值运算符,例如" += “、” -= “、” *= “、” /= “、” %= " 示例:“int a = 8”、" b += 18"、" m *= 5" 二、算术运算符 符号 " + “、” - “、” * “、” / “、” % “、” ...
  • Java条件运算符、instanceof运算符 文章目录Java条件运算符、instanceof运算符条件运算符instanceof运算符 条件运算符 语法格式: 条件?表达式1:表达式2 运算规则: 条件运算符也称三元运算符。对于i?x:y,当i...
  • java三目运算符

    万次阅读 2018-01-12 15:49:18
    写在前面: 三目运算符是我们经常在代码中使用的,a= (b=...前段时间遇到(一个由于使用三目运算符导致的问题,其实是因为有三目运算符和自动拆箱同时使用(虽然自动拆箱不是我主动用的)。 一、三目运算符 对于条
  • 运算符 结合性 [ ] . ( ) (方法调用) 从左向右 ! ~ ++ -- +(一元运算) -(一元运算) 从右向左 * / % 从左向右 + - 从左向右 << >&g...
  • 从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。下面详细介绍每个位运算符。   1.与运算符运算符用符号“&amp;”...
  • java 运算符顺序

    2017-08-13 16:53:41
    Java运算符优先级  此文章为转载,来源http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html 序列号 符号 名称 结合性(与操作数) 目数 说明 1 . ...
  • 所有的数学运算符都认为是从左到右运算的,Java 语言中大部分运算符也是从左到右结合的,只有单目运算符、赋值运算符和三目运算符例外,其中,单目运算符、赋值运算符和三目运算符是从右向左结合的,也就是从右向左...
  • java 三目运算符解析

    2020-08-25 11:25:01
    首先 感谢原作者的高质量文章 ...一些简单的分支结构可以使用简单的运算符来代替: if(a<b){ ...条件运算符由“?”和“:”组成,要求有三个操作对象,所以他叫三目运算符 他的一般形式为 表达式1?表达
  • java运算符结合性和优先级

    千次阅读 2013-02-18 08:33:43
     java运算符结合性  所有的数学运算符都认为是从左到右运算的,java语言中大部分运算符也是从左到右结合的,只有单目运算符、赋值运算符和三目运算符例外,其中,单目运算符、赋值运算符和三目运算符是从右向左...
  • 三元运算符 逻辑/关系表达式?表达式1:表达式2; 执行顺序:逻辑/关系表达式结果为true,那么执行表达式1,反之执行表达式2 表达式1和表达式2的运算结果要求类型相同或相容 double d = a &gt; b ? a * 2 : b ...
  • java中三目运算符详解

    万次阅读 2019-04-27 11:05:09
    对于有些选择分支结构,可以使用简单的条件运算符来代替. 如: if(a<b) min=a; else min=b; 可以用下面的条件运算符来处理 min=(a<b)?a:b;  其中"(a<b)?a:b"是一个"条件表达式",它是这样执行的: ...
  • 1、运算符的优先级(由高到低)var++和var--(后置运算符)+、-(单目运算符正号和负号),++var和--var(前置运算符)(type)(类型转换)!(非)*、/、%(乘法、除法和求余)+、-(双目运算符加号和减号)&...
  • 运算符 赋值运算符 = 变量名 = 表达式; 将右边的值给左边的变量 int a = (b+3)+(b-1); 表达式就是符号(如加好、减号)与操作数(如b,3等)的组合 算术运算符 +、-、*、/、%、++、– 复合赋值运算符:+=、-=、*...
  • Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的...介绍Java运算符,以及区分JAVA语言与C语言中运算符的差异。 基本信息 中文名称 JAVA语言运算符 推出 Sun Microsyste..
  • Java中的运算符和数据类型转换 ...结合性:当一个算式的几个运算符优先级相同时,先从哪边开始计算。只要记住单目运算符、三目运算符、赋值运算符是从右向左计算,其他运算符都是从左向右计算就好。 !:后面跟tr...
  • Java运算符优先级

    2020-03-03 15:53:27
    Java 语言中大部分运算符是从左向右结合即从左向右计算的,只有单目运算符、赋值运算符和三目运算符例外,其中,单目运算符、赋值运算符和三目运算符是从右向左结合的,也就是从右向左运算。 乘法和加法是两个可结合...
  • 运算符的计算方向就是运算符 结合性。具有高优先级的运算符先于低优先级的运算符进行计算。如果复杂的表达式有多个运算符,则运算符优先级将确定执行操作的顺序。执行顺序可能对结果值 有明显的影响。某些运算符具有...
  • Java提供了丰富的运算符,例如算术运算符、关系运算符、逻辑运算符、位运算符等; 其中又分有单目运算符和二目运算符; 一、单目运算符:只对单独一个操作元(变量)进行操作; -------- 其中自增、自减运算符++...
  • 条件运算符的嵌套

    千次阅读 2017-06-25 11:25:07
    条件运算符的嵌套使用,同时包含了检测输入是否为数字的正则判断

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 21,214
精华内容 8,485
关键字:

java条件运算符结合顺序

java 订阅