算术运算符

一、算术运算符

  1、算术运算符的种类:+   -   *   /   %   ++   --

    注意:Java运算中,整数使用以上运算符,无论怎么计算,也不会得到小数

  2、“+”在Java中的用法

    • 做加法运算
    • 数值的正号
    • 字符串的连接符

  3、++和--的用法

    • 独立运算:

        在变量前后没有区别,均为自身数值加一

        例:i++;j--

          ++i;--j

    • 混合运算:

        在变量前面时:先自身加一,再参与其他计算

        在变量前面时:先参与其他计算,最后再自身加一

        例如int a = 0,b = 5;

          int c,d;

          c = a++;  //先把a的值赋值给c再自增1变成1

          System.out.printfln(“a=”a);

          System.out.printfln(“c=”c);

          得到的结果为:a=1   c=0

          d = --b;//先自减1变成4然后再赋值给d

          System.out.printfln(“b=”b);

          System.out.printfln(“d=”d);

          得到的结果为:b = 4   c = 4

二、赋值运算符

  1、赋值运算符种类:=   +=   -=    *=    /=    %= 

    =   将“=”左边的数值赋值给"="右边的变量

    a +=2等价于a=a+2

三、比较运算符

    <   >   ==    !=   <=  >=

    比较运算符,是两个数据之间进行比较的运算,运算结果都是布尔值 true 或者 false 

四、逻辑运算符

&:有一个true最后结果则为true

|:有一个false最后结果则为false

^:有一个false和一个true则为true

!:有false则为true,有true则为false

&&:短路与:符号左边是false时,右边不再运算

||:短路或:符号左边是true时,右边不再运算

五、位运算符

    ~:按位取反:

    &:按位与

    |:按位或

    <<:左移,左边最高位丢弃,右边补齐0

    >>:带符号右移,如果是正数则在高位补零,负数则补1

    >>>:无符号右移,在高位补零

 (1)代码验证区分>>与>>>(以补码的形式显示)

public class Operator {
    public static void main(String[] args) {
        byte a = -0x7f;
        System.out.println(Integer.toBinaryString(a));
        System.out.println(Integer.toBinaryString(a>>2));
        System.out.println(Integer.toBinaryString(a>>>2));
    }
}

    输出结果

    11111111111111111111111110000001
    11111111111111111111111111100000
        111111111111111111111111100000(最高位两个0舍去)

  (2)异或符号的特点:对一个数异或两次,该数本身报持不变

public class Demo01 {
    public static void main(String[] args) {
        int a = 356,b = 549;
        System.out.println("a="+a);
        System.out.println("b="+b);
        System.out.println("**********开始转换**********");
        a = a ^ b;
        b = a ^ b;
        a = a ^ b;
        System.out.println("a="+a);
        System.out.println("b="+b);
    }
}

  输出结果

a=356
b=549
**********开始转换**********
a=549
b=356

六、三目运算符

    数据类型 变量名 = 布尔类型表达式?结果1:结果2

    布尔类型表达式结果是true,三元运算符整体结果为结果1,赋值给变量。

    布尔类型表达式结果是false,三元运算符整体结果为结果2,赋值给变量。

    例:int  a = 25,b=32;

      int c = b < a? b:a;

    该表达式功能:比较a和b的大小,将最小值送给c

      

posted @ 2019-07-30 19:15  七月流星丶  阅读(609)  评论(0编辑  收藏  举报