zoukankan      html  css  js  c++  java
  • [11] 算数运算符


    引用类型之间的比较大多是通过方法来进行的,所以大部分的运算符还是针对基本数据类型。按照功能划分,Java中的运算符可以分为四类:算术运算符、位运算符、比较运算符和逻辑运算符。

    1、算术运算符

    • 单目:表示可以对一个变量进行操作
    • 双目:表示对两个变量进行操作
    • 三目:需要三个操作数进行运算
    运算符类型    符号    含义示例
    单目    +    取正    
    单目    -    取负    
    单目    ++    自增1    
    单目    --    自减1    
    双目    +相加
    双目    -    相减
    双目    *    相乘
    双目    /    相除
    双目    %    取余10%3 --> 1
    三目    表达式 ? 如果为真的值 : 如果为假的值
    10 > 3 ? 1 : 0 --> 1

    注意:
    • 自加++和自减--的位置对返回给表达式的值是有影响的,加号在前表先取值再增加,加号在后表先增加再取值
    • 如 有x和y为1,那么 a = x++ 为1,而 b = ++y 则为2

    2、位运算符

    位运算符,顾名思义,相当于针对的是二进制下的运算。
    符号    含义解释示例
    &全1才1,有0则0
    |有1则1,全0才0
    ~1变成0,0变成1
    ^异或不同为1,相同为0int a=15, b=2; a^b --> 0000 1101 --> 13
    <<位左移左移位,低位处补0
    >>位右移右移位,若正数则高位补0,负数则高位全补1int a=8,c; c=a>>2 --> 0000 1000 --> 0000 0010
    >>>无符号右移无论正负数,高位均补0

    注意:
    • 任何数异或它本身为0;任何数异或0是它本身

    3、比较运算符

    符号含义备注
    ==是否相等可以比较引用数据类型
    !=是否不等可以比较引用数据类型
    <是否小于
    >是否大于
    <=是否小于等于
    >=是否大于等于

    注意:
    • 比较运算符返回的是布尔值,true或false
    • 除了 == 和 != ,其他都只能比较基本数据类型
    • == 和 != 比较对象是比较的虚地址(即是否指向同一个引用)

    4、逻辑运算符

    与或非的运算和位运算符中的与或非使用类似,但是并非判断1和0,而是连接两个boolean值。
    符号    含义解释示例
    &全真才真,有假则假
    &&    短路与

    |有真则真,全假才假
    ||    短路或    

    !真变假,假变真
    ^异或不同为真,相同为假true ^ false --> true; true ^ true --> false

    注意:
    • &&和&结果是相同的,对短路与&&来说,只要左边表达式为false右边则不参与运算,直接返回false
    • 实际上多用&&和||


  • 相关阅读:
    LeetCode 345. Reverse Vowels of a String 题解
    LeetCode 344. Reverse String 题解
    LeetCode 27. Remove Element 题解
    LeetCode 61. Rotate List 题解
    LeetCode 19.Remove Nth Node From End of List 题解
    Android耗电量
    Android 使用adb查看和修改电池信息
    Android AOP AspectJ 插桩
    Flask相关用法
    Monkey日志信息的11种Event percentage
  • 原文地址:https://www.cnblogs.com/deng-cc/p/7461850.html
Copyright © 2011-2022 走看看