zoukankan      html  css  js  c++  java
  • java的各种运算符的优先级

    java 运算符

    算术运算符

    运算符 介绍
    + 加法
    - 减法
    * 乘法
    / 除法
    % 取余数
    ++ 自增
    -- 自减
    += a += b 等价于 a = a + b
    -= a -= b 等价于 a = a - b
    *= a *= b 等价于 a = a * b
    /= a /= b 等价于 a = a / b
    %= a %= b 等价于 a = a % b

    布尔运算符

    运算符 介绍
    & 逻辑与
    | 逻辑或
    ^ 逻辑异或(异或)
    || 短路或(常用)
    && 短路与(常用)
    ! 非(常用)
    &= 和分配
    |= 或分配
    ^= 异或分配
    == 等于
    != 不等于
    ? : 三元 if-then-else

    关系运算符

    运算符 介绍
    == 等于
    != 不等于
    > 大于
    < 小于
    >= 大于或等于
    <= 小于或等于

    三元运算符

    运算符 介绍
    ? : 三目运算符

    ( 使用得当的话,可以很少的简化代码! )

    条件表达式 ? 表达式1 : 表达式2
    
    如果条件为真,返回表达式1,否则返回表达式2 
    
    例如:
    System.out.println(i < 0 ? "i是负数" : "i不是负数");
    //表示:先判断 i < 0,如果为真则打印"i是负数",如果不为真则打印"i不是负数"。
    

    按位运算符

    运算符 介绍
    ~ 按位一元NOT(运算符取反,翻转操作数的每一位,即0变成1,1变成0)
    & 按位AND(如果相对应位都是1,则结果为1,否则为0)
    | 按位或(如果相对应位都是0,则结果为0,否则为1)
    ^ 按位异或(如果相对应位值相同,则结果为0,否则为1)
    >> 向右移动(左操作数按位右移右操作数指定的位数。)
    >>> 右移零填充(左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。)
    << 向左移动(左操作数按位左移右操作数指定的位数。)

    运算符优先级

    优先级 运算符 结合性
    1 () [] . 从左到右
    2 ! +(正) -(负) ~ ++ -- 从右向左
    3 * / % 从左向右
    4 +(加) -(减) 从左向右
    5 << >> >>> 从左向右
    6 < <= > >= instanceof 从左向右
    7 == != 从左向右
    8 & 从左向右
    9 ^ 从左向右
    10 | 从左向右
    11 && 从左向右
    12 || 从左向右
    13 ?: 从右向左
    14 = += -= *= /= %= &= |= ^= ~= <<= >>= >>>= 从右向左
  • 相关阅读:
    As3支持的Html标签一览
    SharpPcap 3.4使用范例
    十六章:构建自定义集合(Part 2)
    十七章:反射、特性和动态编程(Part 1)
    十六章:构建自定义集合(Part 1)
    Implementing Finalize and Dispose to Clean Up Unmanaged Resources
    HDU1711Number Sequence(KMP)
    HDU2087剪花布条(KMP)
    HDU1671Phone List (trie树)
    HDU 1075 What are you talking about(trie树)
  • 原文地址:https://www.cnblogs.com/zhiwenxi/p/11422978.html
Copyright © 2011-2022 走看看