运算符

运算符

Java支持语言如下运算符:

  • 算数运算符:+、-、*、、/、%、++、--


       public static void main(String[] args){
       //二元运算符
       //Ctrl+D:复制当前行到下一行
       int a=10;
       int b=20;

       System.out.println(a+b);
       System.out.println(a-b);
       System.out.println(a*b);
       System.out.println(a/(double)b);
      }
       public class Demo02 {
       public static void main(String[] args){
               long a=132131231L;
               int b=123;
               short c=250;
               byte d=120;
           System.out.println(a+b+c+d);//long类型
           System.out.println(b+c+d);//int类型
           System.out.println(c+d);//int类型


      }
             public static void main(String[] args){
           //++   -- 自增 自减     一元运算
           int a=3;
           int b=a++;//执行这行代码后,先给b赋值,再进行自增
           //a=a+1;
           System.out.println(a);
           //a=a+1;
           int c=++a;//执行这行代码前,先自增,再赋值

           System.out.println(a);
           System.out.println(b);
           System.out.println(c);

           //幂的运算2^3   2*2*2=8     很多运算,我们会使用一些工具类来操作
           double pow=Math.pow(2,3);
           System.out.println(pow);
      }

     

  • 赋值运算符:=

  • 关系运算符:<、>、>=、<=、==、!=、instaceof


       public static void main(String[] args) {
           //关系运算符返回的结果:正常 ,错误     布尔值
               int a=1;
               int b=2;
           System.out.println(a>b);
           System.out.println(a<b);
           System.out.println(a==b);
           System.out.println(a!=b);

               //取余,模运算
           int aa=20;
           int bb=21;
           System.out.println(bb%aa);//   cc / aa     21/20=1.........1

      }

     

  • 逻辑运算符:&&、||、! 与、或、非

    public class Demo05 {
       public static void main(String[] args){
           //逻辑运算符
           //与(and)         或(or)       非(取反)
           boolean a=false;
           boolean b=true;

           System.out.println("a && b:"+(a&&b));//逻辑与运算:两个变量都为真,结果才为true
           System.out.println("a || b:"+(a||b));//逻辑或运算:;两个变量其中一个为真,结果为true
           System.out.println("a ^ b:"+(a^b));//如果是真,则变为假,如果是假则变为真

           //短路运算
           int c=10;
           boolean s=(c>20)&&(c++<10);//如果第一个运算错误后面的就不会执行
           System.out.println(s);
           System.out.println(c);
      }
    }

     

  • 位运算符:&、|、^、~、>>、<<,>>>

      public  static void main(String[] args){
           /*
           A = 0011 1100
           B = 0000 1101

           A&B 0000 1100       对应位都为1则为1,否则为0
           A|B 0011 1101       对应位都是0则是0,否则为1
           A^B 0011 0001       对应位相同为1,否则为1
           ~B 1111 0010       取反

           2*8=16     2*2*2*2
           <<左移     >>右移
               << *2
               >> /2
            */
           System.out.println(2<<3);
      }

     

  • 条件运算符:?:

    public class Demo08 {
       public static void main(String[] args) {
           //三元运算符
           // X   ?   Y   :   Z
           //如果X等于true,则结果为Y,否则为Z

           int score=100;
           String type=score>60?"及格":"不及格";
           System.out.println(type);
      }

     

  • 扩展赋值运算符:+=、-=、*=、/=

      public static void main(String[] args){
           int a=10;
           int b=20;

           a+=b;//a=a+b;
           a-=b;//a=a-b;
           System.out.println(a);


           //字符串连接符   +   ,String
           System.out.println(""+a+b);//前面是字符串类型,后面也变成字符串
           System.out.println(a+b+"");//前面是int类型,后面也是int类型
      }

     

  •  

posted @ 2021-10-07 00:30  梦的起航  阅读(265)  评论(0)    收藏  举报