zoukankan      html  css  js  c++  java
  • Java运算符

    一、算数运算符

    操作符 描述 例子:int a=10;int b=3; 结果
    + a+b 13
    - a-b 7
    * a*b 30
    / a/b 3
    % a%b 1
    ++ 自增 a++;++a(注) 11;11
    -- 自减 a--;--a(注) 9;9

    注:前缀自增、自减法(++a、--a):先自增、自减,在进行表达式运算;

    后缀自增、自减法(a++、a--):先进行表达式运算,在自增、自减。

    public class selfAdd{
        public static void main(String[] args){
            int a=10;//定义变量
            int b=20;//定义变量
            int c=++a;//先自增在赋值
            int d=b++;//先赋值在自增
    
            System.out.println(a);
    
            System.out.println(b);
    
            System.out.println(c);
    
            System.out.println(d);
        }
    }

    运行结果

    11
    21
    11
    20

    二、关系运算符

    运算符 描述 例子:int a=10,b=20; 结果
    == 等于 a==b false
    != 不等于 a!=b true
    > 大于 a>b false
    < 小于 a<b true
    >= 大于等于 a>=b false
    <= 小于等于 a<=b true

    三、位运算符

    应用于int、long、short、char、byte

    操作符 描述

    例子:int a=60;//60=0011 1100

    int b=13;//13=0000 1101

    结果
    & 对应位置是1为1,否则为0 (a&b) 12;//0000 1100
    | 对应位置是0为0,否则为1 (a|b) 61;//0011 1101
    ^ 对应位置相同为0,否则为1 (a^b) 49;//0011 0001
    ~ 取反操作,1变为0,0变为1 (~a) -61;//1100 0011
    << 左移 a<<2 240;//1111 0000
    >> 右移 a>>2 15;//1111
    >>> 补零 a>>>2 15;//0000 1111

    四、逻辑运算符

    操作符 描述 例子:boolean a=true,b=false; 结果
    && 逻辑与 (a&&b) false
    || 逻辑或 (a||b) true
    ! 逻辑非 !(a&&b) true

    短路:

    public class DuanLu{
        public static void main(String[] args){
            int a=5;
            boolean b=(a<3)&&(a++<10);/*先判断a<3为false,则b的结果必定为false,故不再执行短路逻辑运算符后面的操作(a++<10)*/
            System.out.println("b="+b);
            System.out.println("a="+a);
        }
    }

    运行结果

    b=false
    a=5

    五、赋值运算符

    操作符 描述 例子:int a=1;int b=2;int c=10; 结果
    = 赋值 c=a+b; 3
    += 加和赋值 c+=a;//c=c+a 11
    -= 减和赋值 c-=a;//c=c-a 9
    *= 乘和赋值 c*=b;//c=c*b 20
    /= 除和赋值 c/=b;//c=c/b 5
    %= 取模和赋值 c%=b;//c=%b 0
    <<= 左移位赋值 c<<=2;//c=c<<2  
    >>= 右移位赋值 c>>=2;//c=c>>2  
    &= 按位与赋值 c&=2;//c=c&2  
    |= 按位或赋值 c|=2;//c=c|2  
    ^= 按位异或赋值 c^=2;//c=^2  

    六、其他运算符

    ①条件运算符(三元运算符)

    主要决定哪个值赋给变量

    variable x = (expression)? value if true :value if false

    public class Test{
        public static void main(String[] args){
            int a,b;
            a=10;
            
            //如果a等于1成立,则设置b为20,否则为30
            b=(a==1)? 20:30;
            System.out.println("b的值为:"+b);
            
            //如果a等于10成立,则设置b为20,否则为30
            b=(a==10)? 20:30;
            System.out.println("b的值为:"+b);
        }
    }

    运行结果

    b的值为:30
    b的值为:20

    ②instanceof运算符

    用于操作对象实例,检查该对象是否是一个特定类型(类类型或者接口类型)

    (Object reference variable) instanceof (class/interface type)

    若左侧所指的对象为右侧类/接口的一个对象,则结果为真

    class Vehicle{}
    
    
    public class Car extends Vehicle{
        public static void main(String[] args){
            Vehicle a = new Car();
            boolean result = a instanceof Car;
            System.out.println(result);
        }
    }

    运行结果

    true

    ————————————————————————————————————————

    Java运算符优先级:以下最高优先级的在表的最上方,最低优先级的在表中的最下方

    类别 操作符 关联性
    后缀 ()小括号 []中括号 .点操作符
    一元 +取正 -取负 !逻辑非 ~取反
    乘除余 *乘法 /除法 %取余
    加减 +加法 -减法
    移位 >>右移 >>>补零 <<左移
    关系 >大于 >=大于等于 <小于 <=小于等于
    相等 ==等于 !=不等于
    按位与 &
    按位异或 ^
    按位或 |
    逻辑与 &&
    逻辑或 ||
    条件 ?:三木运算符
    赋值 =赋值 +=加和赋值 -=减和赋值 *=乘和赋值 /=除和赋值 %=取模和赋值 >>=右移位赋值 <<=左移位赋值 &=按位与赋值 ^=按位异或赋值 |=按位或赋值
    逗号 ,
  • 相关阅读:
    Atitit.code base view 视图的实现原理
    Atitit.code base view 视图的实现原理
    Atitit。  工作流引擎的发展趋势
    Atitit. atiOrder   Order 订单管理框架的设计
    Atitit。  工作流引擎的发展趋势
    Atitit. atiOrder   Order 订单管理框架的设计
    atitit.编程语言 类与对象的 扩展机制.doc
    atitit.编程语言 类与对象的 扩展机制.doc
    Atitit.为什么小公司也要做高大上开源项目
    Atitit.为什么小公司也要做高大上开源项目
  • 原文地址:https://www.cnblogs.com/jaci/p/11380457.html
Copyright © 2011-2022 走看看