1. 程式人生 > 其它 >Day04-基本運算子

Day04-基本運算子

基本運算子

一、二元運算子

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);//30
        System.out.println(a-b);//-10
        System.out.println(a*b);//200
        System.out.println((double)a/b);//0.5

    }
}

二、intresting!

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(c+d);//int
        //兩個或多個數操作時,如果有long全部轉為long
    }
}

三、關係運算符

package operator;

public class Demo03 {
    public static void main(String[] args) {
        //關係運算符返回的結果:   正確、錯誤   布林值
        int a=10;
        int b=20;
        int c=21;

        System.out.println(a>b);//false
        System.out.println(a<b);//true
        System.out.println(a==b);//false
        System.out.println(a!=b);//true
        System.out.println(c%a);//1 取餘  模運算
    }
}

四、自增自減運算子、初識Math類

package operator;

public class Demo04 {
    public static void main(String[] args) {
        //++    --     自增   自減      一元運算子
        int a=3;
        int b=a++;//先賦值再運算
        int c=++a;//先運算再賦值

        System.out.println(a);//5
        System.out.println(b);//3
        System.out.println(c);//5

        //冪運算 2^3   2*2*2=8 很多運算,我們會使用一些工具類來操作
        double pow=Math.pow(2,3);
        System.out.println(pow);

    }
}

五、邏輯運算子

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)));//邏輯非
        //OS:終於發現電子技術的用處......
        //短路運算理解一下!
        int c=5;
        boolean d=(c<4)&&(c++<4);
        System.out.println(d);//false
        System.out.println(c);//5

    }
}

六、位運算子

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
        >>右移    /2
        */
    }
}

七、三元運算子

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);//10

        //字串連線符    +   String
        System.out.println(a+b);//30
        System.out.println(""+a+b);//1020連線
        System.out.println(a+b+"");//30運算
    }
}

package operator;
//三元運算子
public class Demo08 {
    public static void main(String[] args) {
        //x ? y : z
        //如果x==true,則結果y,否則z
        int s=80;
        String t=s>60 ? "及格" : "不及格";//必須掌握!!!
        System.out.println(t);//及格
    }
}