1. 程式人生 > 其它 >瀏覽器安全:36 | HTTPS:讓資料傳輸更安全

瀏覽器安全:36 | HTTPS:讓資料傳輸更安全

運算子

算數運算子:+,-,*,/,++,--

賦值運算子=

關係運算符:>, <, >=, <= ,==, !=instanceof

這三種必須掌握。

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/b);//輸出了0,本來得0,5,自動取成了0,所以我們要轉換為double
        System.out.println((double) a/b);//輸出0.5,正確

    }
}

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(double也是)
        //沒有long時,結果都為int(無論你有沒有int)

    }
}

package operator;

public class Demo03 {
    public static void main(String[] args) {
        //關係運算符返回的結果:正確,錯誤  布林值
        int a = 10;
        int b = 20;
        System.out.println(a>b);//false
        System.out.println(a<b);//true
        System.out.println(a==b);//false
        System.out.println(a!=b);//true

        int c = 21;
        System.out.println(c%a);//   c / a   21/10=2 ... 1
        //輸出1 餘數為1  (模運算)
    }
}

package operator;

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

        int b = a++;//a++   a = a + 1  執行完這行程式碼後,先給b賦值,再自增
        //a = a + 1
        System.out.println(a);//4
        //a = a + 1
        int c = ++a;//++a   a = a + 1  執行完這行程式碼前,先自增,再給c賦值

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

        //冪運算2^3 2*2*2 = 8 java中沒有^
        double pow = Math.pow(2,3);//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)); //false 邏輯與 兩個都為真 結果才為真
        System.out.println("a || b:"+(a||b)); //true 邏輯或 兩個有一個為真 結果為真
        System.out.println("!(a && b):"+!(a&&b)); //true 是真則為假 是假則為真

        //短路運算
        int c = 5;
        boolean d = (c<4)&&(c++<4);//false  前面是錯的 後面的就不會執行了
        System.out.println(d);
        System.out.println(c);//輸出的5不是6  c++沒有執行

    }

}

package operator;
//位運算

public class Demo06 {
    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     兩個相同則為0 其他則為1 異或
        ~A = 1100 0011      取反
        ~B = 1111 0010

         2*8 = 16   2*2*2*2  2*8怎麼運算最快 (面試題)
         << >> 左移 右移
         0000 0000 0
         0000 0001 1
         0000 0010 2
         0000 0011 3
         0000 0100 4
         0000 1000 8
         0001 0000 16   逢2進1 翻一倍 1向左移一位
         所以! << *2   >> /2
         這些經常用來和二進位制打交道的  效率極高
          */
        System.out.println(2<<3); //16  2乘3個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
        //字串連結符 + ,String
        System.out.println(a+b);

        System.out.println(""+a+b);//1020
        System.out.println(a+b+"");//30
        //面試題 這兩個有什麼區別
        //如果字串""在前面 則會拼接  字串""在後面,前面的a+b依舊進行運算
    }
}

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 ? "不及格":"及格";
        //小於60則及格 否則及格
        System.out.println(type);

    }
}

優先順序()