运算符的使用

运算符

  • Java语言支持如下运算符:优先级()

    • 算术运算符:+,-,*,/,%,++,–

    • package operator;
      
      public class Demo01 {
          public static void main(String[] args) {
              //二元运算符
              //Ctrl + D :复制当前行到下一行
              int a = 10;
              int b = 20;
              int c = 25;
              int d = 25;
      
              System.out.println(a+b);
              System.out.println(a-b);
              System.out.println(a*b);
              System.out.println(a/(double)b);
          }
      }
      
    • package operator;
      
      public class Demo02 {
          public static void main(String[] args) {
              long a = 123123123123123L;
              int b = 123;
              short c = 10;
              byte d = 8;
      
              System.out.println(a+b+c+d);//Long
              System.out.println(b+c+d);//Int
              System.out.println((double) (c+d));//18.0
              //System.out.println((String) (c+d));不能把int值转换为String类型
          }
      }
      
    • 自增自减运算符

    • package operator;
      
      public class Demo04 {
          public static void main(String[] args) {
              //++        --      自增,自减   一元运算符
              int a = 3;
      
              int b = a++;//执行完这行代码后,先给b赋值,再自增
              //a = a + 1;
              System.out.println(a);
              //a++   a = a + 1;
              int c = ++a;//执行完这行代码前,先自增,先给b赋值
      
              System.out.println(a);
              System.out.println(b);
              System.out.println(c);
      
              //幂运算 2^3   2*2*2 = 8   很多运算,我们会使用一些工具类来操作
              double pow = Math.pow(2,3);//8
              System.out.println(pow);
      
      
          }
      }
      
    • 赋值运算符:=

    • 关系运算符:>,<,>=,<=,==,!=instanceof

    • package operator;
      
      public class Demo03 {
          public static void main(String[] args) {
              //关系运算符返回的结果:正确,错误  布尔值
              //if
      
              int a = 10;
              int b = 10;
              int c = 11;
      
              //取余,模运算
              System.out.println(c%a);//c / a     11/10=1…1
      
              System.out.println(a>b);
              System.out.println(a<b);
              System.out.println(a==b);
              System.out.println(a!=b);
      
          }
      }
      
    • 逻辑运算符:&&,||,!

    • package operator;
          //逻辑运算符
      public class Demo05 {
              public static void main(String[] args) {
                  //与(and)    或(or)   非(取反)
                  boolean a = true;
                  boolean b = false;
      
                  System.out.println("a && b: "+(a&&b));//逻辑与运算:两个变量都为真,结果才为真
                  System.out.println("a || b:"+(a||b));//逻辑或运算:两个变量有一个为真,结果就为真
                  System.out.println("! (a && b) :"+!(a&&b));//如果是真,则变为假,如果是假则变为真
      
                  //短路运算
                  int c = 5;
                  boolean d = (c<4)&&(c++<4);
                  System.out.println(d);
                  System.out.println(c);
      
              }
      
      }
      
    • 位运算符:&,|,^,~,>>,<<,>>>(了解!!!)

    • package operator;
      
      public class Demo06 {
          public static void main(String[] args) {
              /*
              A = 0011 1100;
              B = 0000 1101
              ------------------
              A&B 0000 1100
              A|B 0011 1101
              A^B 0011 0001   异或运算相同为0不相同为1
              ~B  1111 0010   取反运算
      
              2*8 = 16    2*2*2*2
              效率极高!!!
              <<  左移  *2
              >>  右移  /2
      
              0000 0000       0
              0000 0001       1
              0000 0010       2
              0000 0011       3
              0000 0100       4
              0000 1000       8
              0001 0000       16
              */
      
              System.out.println(2<<3);//16
          }
      }
      
    • 条件运算符(三元运算符):?:

    • package operator;
      
          //三元运算符
      public class Demo08 {
              public static void main(String[] args) {
                  // x ? y : z
                  //如果x==true,则结果为y,否则结果为z
      
                  int score=80;
                  String type = score < 60 ?"不及格":"及格";
                  // if
                  System.out.println(type);
              }
      }
      
    • 扩展赋值运算符:+=,-=,/=

    • package operator;
      
      public class Demo07 {
          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在字符串的左侧出现了String类型,就会把整个字符串转换为String类型
              System.out.println(a+b);
              System.out.println(""+a+b);//1020
      
              System.out.println(a+b+"");//30
          }
      }
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

九命猫小宇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值