Java 运算符

  1. 算术运算符:= 、-、*、/、%、++、–
  2. 赋值运算符:=
  3. 关系运算符:<、 >、>=、<=、==、!= instanceof
  4. 逻辑运算符:&& || !
  5. 位运算符:&, |, ^, ~、>>、<<、>>>(了解!!!)
  6. 条件运算符:?:
  7. 扩展赋值运算符:+= -= *= /=

2二元运算符

idea 编译器 Ctrl + D 复制当前行到下一行

int a = 10;
    int b = 20;
    int d = 30;
    System.out.println(a+b);
    System.out.println(a-b);
    System.out.println(a*b);
    System.out.println(a/(double)b);//强制转换 转换为double  如果不转换则为0  遵循四舍五入原则

优先级

低 ------------------------------------> 高
byte,short,char—> int —> long—> float —> double
package day02;

/**
• @Author: 阿波罗
• @Date: 2021/11/21 19:13
• @oath: 不分白天黑夜的征途 淦!
• @Version: 1.0.0
 */
 public class Demo11 {
 public static void main(String[] args) {
 long a = 12332313123L;
 int b = 123;
 short c = 10;
 byte d = 8;
 // 低的向高的运算 数据类型自动转换 优先级 高先
 System.out.println(a+b+c+d);//Long 优先级 高先 所以为Long
 System.out.println(b+c+d);//int
 System.out.println(c+d);//int
 }
 }

常用 ++ 自加 、 – 自减

package day02;
/**
• @Author: 阿波罗
• @Date: 2021/11/22 15:08
• @oath: 不分白天黑夜的征途 淦!
• @Version: 1.0.0
 */
 public class Demo13 {
 public static void main(String[] args) {
 //逻辑运算符
 //&&(与 and) ||(或 or) ! (非 取反)
 boolean a = true;
 boolean b = false;
 System.out.println(a&&b);//两个变量为真,结果才为真 true
 System.out.println(a||b);//两个变量 有一个为真 则为真 true
 System.out.println(!(a&&b));//取反 真则为假 假则为真
 }
 }

逻辑运算符 &&(与 and) ||(或 or) ! (非 取反)

package day02;

/**
 * @Author: 阿波罗
 * @Date: 2021/11/22 15:08
 * @oath: 不分白天黑夜的征途 淦!
 * @Version: 1.0.0
 */
public class Demo13 {
    public static void main(String[] args) {
        //逻辑运算符
        //&&(与 and)   ||(或 or)   ! (非 取反)
        boolean a = true;
        boolean b = false;
        System.out.println(a&&b);//两个变量为真,结果才为真 true
        System.out.println(a||b);//两个变量 有一个为真  则为真 true
        System.out.println(!(a&&b));//取反  真则为假  假则为真
        //路运算
        int c = 5;
        boolean d = (c<4)&&(c++<4);//c<4  c是5 所以c并不小于4 所以不会执行 c++<4   ((true)&&()) 为真才执行后面的语句
        System.out.println(c);
        System.out.println(d);
    }
}

---

+= -+ *= /= 扩展运算符

package com.whs.day02;

/**
 * @Author: 阿波罗
 * @Date: 2021/11/22 17:02
 * @oath: 不分白天黑夜的征途 淦!
 * @Version: 1.0.0
 */
public class Demo15 {
    public static void main(String[] args) {
        //  += -+ *= /=  扩展运算符
         int a = 10;
        int b = 20;
        b+=a;//b=b+a;  ---> b=2+1;  初学不建议使用 这属于偷懒
        System.out.println(b);// 输出---》 30
        //字符串连接符 +   只要有一方是String类型它(+) 都会转换为字符串类型 从而进行拼接  但字字符串在后面就不会变为拼接
        System.out.println(a+b+"啦啦啦"); // 输出---》  40 b=30+10
        System.out.println(""+a+b);//  输出-----》 1030  这里就是拼接得出的
    }
}

面试会涉及到的位运算

//位运算
/*
* A=0011 1100
* B=0000 1101
* ------------------------------------------------------------------------------------------------------
* A&B = 0000 1100 真真为真(1<->1)1 真假为假(1<->0)0 假假为假(0<->0)0 全真则才为真 与
* A|B = 0011 1101 假假为假(0<->0)0 真假为真(1<->0)1 真真为真(1<->1)1 只要有个为真结果都为真 或
* A^B = 0011 0001 00->0 01->1 10->1 11->0 相同为0不同为1 (同0异1) 异或
* ~B = 1111 0010 0->1 1->0 真为假 假为真 取反

package day02;

/**
 * @Author: 阿波罗
 * @Date: 2021/11/22 15:41
 * @oath: 不分白天黑夜的征途 淦!
 * @Version: 1.0.0
 */
public class Demo14 {
    public static void main(String[] args) {
        //位运算
        /*
        * A=0011 1100
        * B=0000 1101
        * ------------------------------------------------------------------------------------------------------
        * A&B = 0000 1100   真真为真(1<->1)1  真假为假(1<->0)0  假假为假(0<->0)0     全真则才为真    与
        * A|B = 0011 1101   假假为假(0<->0)0  真假为真(1<->0)1 真真为真(1<->1)1    只要有个为真结果都为真      或
        * A^B = 0011 0001   00->0  01->1  10->1 11->0  相同为0不同为1 (同0异1)    异或
        * ~B  = 1111 0010   0->1  1->0   真为假 假为真   取反 
        * */
    }
}

#三目运算符 (:?) x ? y : z —> 如果 x==true, 则结果为y ,否则结果为false

package com.whs.day02;

/**
 * @Author: 阿波罗
 * @Date: 2021/11/22 17:19
 * @oath: 不分白天黑夜的征途 淦!
 * @Version: 1.0.0
 */
public class Demo16 {
    public static void main(String[] args) {
        //三目运算符  (:?)    x ? y : z --->  如果 x==true, 则结果为y ,否则结果为false
        int cate = 80;
        String type = cate<60 ?"不及格":"及格";//必需掌握  开发中常用
        System.out.println(type);
//        到这里基础已经学完
    }
}