运算的优先级


1.分隔符(;(){})小括号的优先级最高
2.单目运算符  ++  --  ~  !
3.强制类型转换符   如:double a=(double)20;
4.乘法,除法,摸运算(%)
5.加法和减法
6.位运算的移位运算 <<  >>  >>>
7.关系运算符的比较运算  <  <=  >  >=
8.关系运算符的等价符   ==和 =!
9.位运算的按位与  &
10.位运算的按位异或  ^
11.位运算的按位或   |
12.短路与  &&
13.短路或  ||
14.三目运算符
15.赋值运算符


import java.util.*;
class Expression{


      public static void main(String[] args){


      boolean q,w,e,r,t,y,u,i,o,p;
      int a,b,c,d;
      a=1;
      b=2;
      c=3;
      d=4;


      //1.
      q=(a*b++)>a||c+b>a;
      //因为刚开始,所以要点简单
      //先算左边的都对,右边也是,所以这道题是true


      //2.
      w=(a ^ b)>c||d*c<a++;
      //因为第一题 b=3 了,所以a^b=2   比c小 错
      //右边的也是错的    false     a=2


      //3.
      e=b!=a++&&(a & b)<d;
      //左边是对的,所以a=3    a&b=3<d, true


      //4.
      r=(a | c++)==b&&a++ + d>d;
      // a|c++=3 == b     右边也对   true


      //5.
      t=d==(c&d)&&d++ - c+a==c;
      //true    d=5 了


      //6.
      y=(a^b)<d||a+c==d&&c*d>d;
      //  (a^b)<d  ||  (a+c==d && c*d>d)     a+c==d  错的 false


      //7.
      u=d+c>a&&(d|c)==d|| ++a/d<b;
      // (d+c>a&&(d|c)==d)   || ++a/d<b  都是对的  true
      //因为这是短路或 且 左边的对了 所以右边的不再计算


      //8.
      i=a*b<c*d||a<c||a>b;
      //就算    a<c 是错的  但表达式是短路或  且左边对了 所以还是true


      //9.
      o=++d/b<c||a++*c>d||b++>d;
      //因为这是短路或 且 左边的对了 所以右边的不再计算  true
      //d=6   a和b不变


      //10.
      p=a<<2>d>>2||(b^c)== ++d&&d-c==b;
      //a<<2=16  >  d>>2=1  短路或    true


        System.out.println(q);
        System.out.println(w);
        System.out.println(e);
        System.out.println(r);
        System.out.println(t);
        System.out.println(y);
        System.out.println(u);
        System.out.println(i);
        System.out.println(o);
        System.out.println(p);


        System.out.println("a:"+a);
        System.out.println("b:"+b);
        System.out.println("c:"+c);
        System.out.println("d:"+d);


  }


}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值