自增自减运算符、初识Math类、逻辑运算符、位运算符、扩展赋值运算符、三元运算符 2021-11-15

这篇博客介绍了Java中的自增自减运算符,如a++和++a的区别,以及Math类的幂运算。还探讨了逻辑运算符的短路特性,并展示了位运算符的使用。此外,博主分享了提高2的幂运算效率的方法,如使用位左移运算符。最后,提到了扩展赋值运算符如a+=b,并讨论了三元运算符在条件判断中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Day12

自增自减运算符

int b = a++; //先给b赋值,再自增
int c = ++a; //先自增,再给b赋值


package operater;

public class Demo04 {
    public static void main(String[] args) {
        //++   --   自增,自减  一元运算符  只有一个未知数
        int a = 3;
        int b = a++;
        int c = ++a;
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
    }
}

在这里插入图片描述

初识Math类

        //幂运算2^3  2*2*2 =8 很多运算,我们会使用一些工具类来操作
        double pow = Math.pow(2, 3);
        System.out.println(pow);

在这里插入图片描述

逻辑运算符

短路运算:对于与运算如果前面一个变量是假,那后面的变量就不会进行判断是真是假

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

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

    }
}

在这里插入图片描述

位运算符

package operater;

public class Demo06 {
    public static void main(String[] args) {
        /*
        A = 0011 1100
        B = 0000 1101
        --------------------------------------------------------
        A&B 对应位置的数进行比较,如果这两个数都为1,结果才为1,否则就是0
        A&B = 0000 1100
        A|B 如果对应位置的数都是0,结果就是0,否则就直接为1
        A|B = 0011 1101
        A^B 如果这两个位置的数都相同就为0,否则就位1
        A^B = 0011 0001  
        ~B  和B完全相反
        ~B  = 1111 0010
         */
    }
}
         面试题:
         2*8  怎么算最快
         效率极高的方法
         <<    *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);

输出
在这里插入图片描述

扩展赋值运算符

package operater;

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);
    }
}
package operater;
public class Demo07 {
    public static void main(String[] args) {
        //面试题
        //字符串连接符   +  ,String
        System.out.println(""+a+b);
        //如果字符串在前面,那么就凭借,如果字符串在后面,前面就会依旧进行运算
        System.out.println(a+b+"");
    }
}

在这里插入图片描述

三元运算符

package operater;

public class Demo08 {
    public static void main(String[] args) {
        //x ? y : z
        //如果x==true,则结果为y,否则结果为z
        int score=80;
        String type = score <60?"不及格":"及格"; //必须掌握
        System.out.println(type);
    }
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值