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运算符优先级:以下最高优先级的在表的最上方,最低优先级的在表中的最下方

    类别 操作符 关联性
    后缀 ()小括号 []中括号 .点操作符
    一元 +取正 -取负 !逻辑非 ~取反
    乘除余 *乘法 /除法 %取余
    加减 +加法 -减法
    移位 >>右移 >>>补零 <<左移
    关系 >大于 >=大于等于 <小于 <=小于等于
    相等 ==等于 !=不等于
    按位与 &
    按位异或 ^
    按位或 |
    逻辑与 &&
    逻辑或 ||
    条件 ?:三木运算符
    赋值 =赋值 +=加和赋值 -=减和赋值 *=乘和赋值 /=除和赋值 %=取模和赋值 >>=右移位赋值 <<=左移位赋值 &=按位与赋值 ^=按位异或赋值 |=按位或赋值
    逗号 ,
  • 相关阅读:
    linux常用命令
    mysql 开发基础系列20 事务控制和锁定语句(上)
    sql server 性能调优之 资源等待 CXPACKET
    mysql 开发基础系列19 触发器
    mysql 开发基础系列18 存储过程和函数(下)
    mysql 开发基础系列17 存储过程和函数(上)
    sql server 性能调优之 资源等待PAGEIOLATCH
    mysql 开发基础系列16 视图
    mysql 开发基础系列15 索引的设计和使用
    sql server 性能调优之 当前用户请求分析 (1)
  • 原文地址:https://www.cnblogs.com/jaci/p/11380457.html
Copyright © 2011-2022 走看看