java入门-1-3-运算符

运算符

(接下来的文章都是根据b站up主 狂神说视频整理)后面就不写这个了;

++a, a++

public static void main(String[] args) {
        // ++  --  自增,自减 一元运算符
        int a = 3;
        int b = a++; //可以理解为 先把a赋值给b 然后 a 在自增1
        System.out.println(a); //结果为 4
        System.out.println(b); //结果为 3
    }

下面这个结果貌似不是先赋值后加, 暂时没搞懂(大家可以帮我看看)

public static void main(String[] args) {
        // ++  --  自增,自减 一元运算符
        int a = 3;
         a = a++; 
        System.out.println(a); //结果为 3
    }

幂运算

//幂运算 2^3 2*2*2=8 很多运算,会用到工具类操作!
        double pow = Math.pow(2,3);
        System.out.println(pow); //运算结果:8.0

逻辑运算 与 (and)或 (or)非(取反)

public static void main(String[] args) {
        // 与(and) 或(or) 非(取反)
        boolean a = true;
        boolean b = false;
        System.out.println("a&&b" + (a&&b));     //逻辑与运算,两个变量都为真,结果才为true;
        System.out.println("a||b"+(a||b));       //逻辑与运算,有一个变量都为真,结果才为true;
        System.out.println("!(a&&b)" + !(a&&b)); //如果是真,则变为假,如果是假则变为真;  (a&&b)的结果为false 然后!取反就是true;

        //短路运算
        int c = 4 ;
        boolean d = (c < 4)&&(c++ < 4);
        System.out.println("d:" + d);
        System.out.println("c:" + c);
    }

*位运算(面试有时会问)

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; // 异或 不相同则为1 否则为0;
      ~b = 1111 0010 //非 取反

      2*8 = 16   2*2*2*2
      效率极高!!!
      <<  *2 左移
      >>  /2 右移

      0000 0000   0
      0000 0001   1
      0000 0010   2
      0000 0011   3
      0000 0100   4
      0000 1000   8
      0001 0000   16
         */

        System.out.println(2<<3); // 2左移三位 看上面的2的二进制(0000 0010   2)
                                  // 向左边移动三位就是(0001 0000   16) 值就是16
    }

扩展赋值运算符 及 字符串拼接

public static void main(String[] args) {
        int a = 2;
        int b = 3;

        a += b; //a = a + b
        a -= b; //a = a - b
        System.out.println(a);

        //字符串拼接 +  ,String
        System.out.println(""+a+b);  //输出为23; 因为当最前面有String类型时候 后面的变量会自动转化为字符串类型 并进行拼接;
        System.out.println(a+b+"");  //输出为5; 只有最前面有字符串类型时候才会转换并拼接,在后面不影响;
    }

三元运算符

public static void main(String[] args) {
        int a = 2;
        int b = 3;

        a += b; //a = a + b
        a -= b; //a = a - b
        System.out.println(a);

        //字符串拼接 +  ,String
        System.out.println(""+a+b);  //输出为23; 因为当最前面有String类型时候 后面的变量会自动转化为字符串类型 并进行拼接;
        System.out.println(a+b+"");  //输出为5; 只有最前面有字符串类型时候才会转换并拼接,在后面不影响;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值