赋值运算符与比较运算符和逻辑运算符

作业中char运算的一个问题

' '中的是字符(字符可以转化成对应的值)相加会进行数字运算

" "中是要显示的东西

赋值运算符与比较运算符

赋值运算符:+=、-=、/=、%=

如i+=3    相当于     i=i+3(只有在int中生效)

short s=10;   s=(short)(s+1);     相当于     s+=1;

s=s+3是错误的,因为它默认为int类型,但是+=就不会这样

注意:"="是赋值,"=="是等于

            i=1  i*=0.1   结果为0(因为0.1不是int类型,自动为0但不会出错)

逻辑运算符

&:逻辑与             |:逻辑或            !逻辑非

&&:短路与          ||:短路或            ^逻辑异或(相比较两方相异则是或)

&与&&的区别

&:不管左边为true或是false,右端均会进行运算

&&:一旦左端为false,右端不在运算,当左端为true,同上(推荐使用)

        boolean a=false;
        int b=10;
        if (a&(b++)>0)
        {
            System.out.println("很开心");
        }
        else
            {
            System.out.println("超开心");
        }
        System.out.println(b);
        int b2=10;
        if (a&&(b2++)>0)
        {
            System.out.println("很开心");
        }
        else
        {
            System.out.println("超开心");
        }
        System.out.println(b2);

|与||的区别:

|:无论左边是true还是false,右边均运算

||:当左端是false,右边不运算,当左端为true,同上(推荐使用)

原文地址:https://www.cnblogs.com/KeepCalmAndNeverSayNever/p/10055786.html