JavaSE Base3

运算符

  1. 数学运算

    • 运算时,会进行自动类型转换,转换为较高的类型,然后得出此类型的结果。因此,整型除运算时会丢失小数点后的部分。

    • 数字加字符串,会将两者连接生产字符串

    • %模运算,取余

  2. 快速运算

    • s+=1 等价于 s=s+1

    • ++i和i++,前置代表先自增1再代入,后置则相反

  3. 逻辑运算

    • &&与;||或;!非

    • 三元运算符:x?y:z 意义:x true : y ; x false : z

  4. 优先级

    • 从左到右;()优先级最高

package operator;

public class Operator {
   public static void main(String[] args) {

       int a = 5;
       int b = 15;
       short c = 2;
       long d = 80;
       System.out.println(a/(double)b);//0.6
       System.out.println();
       //低于int 转换为int;高于int 转换为long

       //字符串连接:+ 注意运算顺序

       //自增,自减 ++ -- 与C中相同

       //增强运算符 不变

       //幂运算
       //int e = math.pow(2,3);

       //逻辑运算 基本不变 && ,||, !

       //短路运算
       int f = 3;
       System.out.println(f<5||f++<5);
       System.out.println("f="+f);

       //三元运算符
       //x?y:z
       //x true : y ; x false : z

       //优先级()
  }
}

位运算

负数:

package operator;

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

       A&B = 位与
       A|B = 位或
       A^B = 异或
       ~B = 位非

       2*8 = 16

       << *2 左移
       >> /2 右移
       >>> 无符号右移

        */
       System.out.println(2<<3);//16
  }
}

 

posted @ 2021-10-15 22:38  ohesy  阅读(34)  评论(0)    收藏  举报