Java Day04

 

Day 04

运算符

  1. 算术运算符

    +、-、*、/、%、++、--

    package Operater;

    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 Operater;

    public class Demo02 {
      public static void main(String[] args) {
          long a = 1231231231;
          int b = 123;
          short c = 10;
          byte d = 8;

          //如果运算中有long,结果类型则为long。如果没有则为int
          System.out.println(a+b+c+d);//long
          System.out.println(b+c+d);//int
          System.out.println((double)c+d);//int
      }
    }
    package Operater;

    public class Demo04 {
       public static void main(String[] args) {
           //++ -- 自增,自减 一元运算符
           int a = 3;
           int b = a++;//先赋值,后+1:相当于后边加上1
           // a = a + 1

           // a = a + 1
           int c = ++a;// 先+1,后赋值

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

     

     

  2. 赋值运算符

    =

  3. 关系运算符

    kage Operater;

    public class Demo03 {
       public static void main(String[] args) {
           //关系运算符的返回结果:正确、错误、布尔值
           int a = 10;
           int b = 20;
           int c = 21;

           System.out.println(c%b);//取余,模运算

           System.out.println(a>b);
           System.out.println(a<b);
           System.out.println(a==b);
           System.out.println(a=b);
           System.out.println(a!=b);
      }
    }

     

  4. 逻辑运算符

    &&,||,!

    package Operater;

    //逻辑运算符
    public class Demo05 {
       public static void main(String[] args) {
           // 与 或 非
           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);//因为逻辑与运算当前者为假则直接输出为假,不会运算后面的项目
      }
    }
    1. 位运算符

      package Operater;

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

             A&B = 0000 1100 与:两个都为真(1),结果才为真(1)
             A|B = 0011 1101 或:两个都为假(0),结果才为假(0)
             A^B = 0011 0001 异或: 相同为0,不同为1
             ~B = 1111 0010 取反: 1变0,0变1
             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);//2中的0000 0010 中的1向左移动三个位置0001 0000
        }
      }

       

  5. 连接运算符

    package Operater;

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

    //       a+=b; // a = a + b
    //       b-=a; // b = b - a

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

           //字符串连接符 + 一侧有字符串的话则会将他们连接在一起
           System.out.println(a+b);
           System.out.println(""+a+b);
           System.out.println(a+b+"");
      }
    }

     

条件运算符

ckage Operater;
// 三元运算符
public class Demo08 {
   public static void main(String[] args) {
       // x ? y : z
       //如果x==true 则结果是y 否则是Z

       int score = 50;
       String type = score < 60 ? "不及格":"及格";
       //if
       System.out.println(type);
  }

优先级

多用些括号,会好点。

posted @ 2021-07-01 16:05  狂狼大白鲨  阅读(31)  评论(0)    收藏  举报