Java学习第五天——基础语法

java基础—运算符

java支持的常用运算符

  • (-+空格+内容)

  • 逻辑运算符:&&(与),||(或),!(非)

  • 位运算符: &,|,^,~,>>,<<,>>> (了解即可)

  • 条件运算符:?:(常说的三目运算符)

  • 拓展赋值运算符:+=,-=,*=,/=

逻辑运算符(示例)

public class Demo03 {
    public static void main(String[] args) {
        //与(and)    或(or)   非(取反)
        boolean a =true;
        boolean b =false;

        System.out.println("a && b:"+(a&&b));//逻辑与运算
        System.out.println("a || b:"+(a||b));//逻辑或运算
        System.out.println("!(a&&b):"+!(a&&b)); //如果是真,则变为假;反之亦然
        System.out.println("====================================================");

        //短路运算
        int c=5;
        boolean d=(c<4)&&(c++<4);//与运算,两者都真,才为真

        System.out.println(c);//c为5,表明d的后部分未运算
        System.out.println(d);

    }
}

运行结果 

grammar" base.Demo03
a && b:false
a || b:true
!(a&&b):true
====================================================
5
false

进程已结束,退出代码为 0

注:短路运算(逻辑中断)_逻辑中断案例题-CSDN博客

位运算(示例)

public class Demo03 {
    public static void main(String[] args) {
        /*
        0000 0000   0
        0000 0001   1
        0000 0010   2
        0000 0011   3
        0000 0100   4
        0000 1000   8
        0001 0000   16


        A=0011 1100
        B=0000 1101

        A&B=0000 1100//A与B:1与1得1,其他都是0
        A|B=0011 1101//对应位都是0,得0.其他都是1
        A^B=0011 0001//对应位相同则为0,不同为1.
        ~B = 1111 0010//取反

        //面试题:2*8怎么算比较快
        2*8=16;2*2*2*2
        位运算,效率极高
        <<  *2
        >>  /2

         */
        System.out.println(2<<3);//结果16,见上面二进制
    }
}

运行结果        16

赋值运算符

public class Demo03 {
    public static void main(String[] args) {
        int a=10;
        int b=20;

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


        //字符串连接符   +    出现string类型,会将内容拼接
        System.out.println(a+b);
        System.out.println(""+a+b);//输出1020,
        System.out.println(a+b+"");//输出30,a+b运算之后出现string类型



    }
}

运行结果


30
10
30
1020
30

三目运算符

public class Demo03 {
    public static void main(String[] args) {
        //x ?y: z
        //如果x为true,则结果为y,否则结果为z
        int score =80;
        String type= score <60?"不及格":"及格";
        //if也是常用,三目更加精简
        System.out.println(type);
    }
}

结果为 及格

总结注意

Java运算符的优先级顺序是指在表达式中,不同运算符的执行顺序。以下是Java运算符的优先级顺序(从高到低):

  1. 一元运算符:包括递增(++)和递减(–)运算符。
  2. 算术运算符:包括乘法(*)、除法(/)、取模(%)、加法(+)和减法(-)运算符。
  3. 移位运算符:包括左移(<<)、右移(>>)和无符号右移(>>>)运算符。
  4. 关系运算符:包括大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、等于(==)和不等于(!=)运算符。
  5. 位运算符:包括按位与(&)、按位或(|)、按位异或(^)和按位取反(~)运算符。
  6. 逻辑运算符:包括逻辑与(&&)、逻辑或(||)和逻辑非(!)运算符。
  7. 条件运算符:包括条件表达式(? :)运算符。
  8. 赋值运算符:包括赋值(=)、加法赋值(+=)、减法赋值(-=)、乘法赋值(*=)、除法赋值(/=)等运算符。

需要注意的是,如果表达式中有多个运算符,优先级高的运算符会先执行,而优先级相同的运算符则按照从左到右的顺序执行。想要优先可以加()。

另附详细的一版Java运算符及运算符的优先级【超详细】_java 运算符优先级-CSDN博客

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值