基本运算符

# 基本运算符:优先级()

算术运算符

+,-,*,/ (加减乘除)

% 取余 (模运算)

++自增

--自减

关系运算符

(前面的不算)>,<,>=,<=,==(等于),!= (不等于),instanceof

逻辑运算符

&&(与),||(或),!(非)

位运算符

&,|,^,~,>>,<<,>>>

条件运算符

? :

扩展赋值运算符

+=,-=,*=,/=

package sevenwhile.back;

public class Demo04 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        int c = 25;
        int d = 25;
//ctrl+D 复制当前行到下一行
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/(double)b);

        long e = 15641651564156L;
        int f = 123;
        short g = 10;
        byte h =8;

        System.out.println(e+f+g+h);//long
        System.out.println(f+g+h);//int
        System.out.println((double) g+h);//cast:转换


        //关系运算符返回的结果:正确,错误  布尔值

        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a==b);
        System.out.println(a!=b);

        int i = 21;
        //取余,模运算
        System.out.println(i%a);//i/a   21/10  = 2....1


        //++   --  自增,自减
        int x = 3;
        int y = x++;//a++  a=a+1
        //执行完这行代码后,先给y赋值,在自增
        System.out.println(x);
        int z = ++x;//执行完这行代码后,先自增,再给x赋值

        System.out.println(x);
        System.out.println(y);
        System.out.println(z);

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

}

package sevenwhile.back;

//逻辑运算符
public class Demo05 {
    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));//如果是真,则变为假,如果是假则变为真

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

}
package sevenwhile.back;

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

        A&B  = 0000  1100  AB的数都是1才为1
        A/B  =  0011 1101  AB的数有一个1就为1
        A^B  =  0011 0001  如果两个位置相同则为0,否则为1
        ~B  =  1111 0010   和B完全相反

        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);
    }
}
package sevenwhile.back;

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);
        System.out.println(a+b);

        //字符串连接符 +  , +符号的两侧出现string类型,则先转换成string再计算
        System.out.println(""+a+b);//先拼接在计算 1020
        System.out.println(a+b+"");//先计算在拼接  30



    }
}
package sevenwhile.back;

//三元运算符
public class Demo08 {
    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);//及格
    }
}
posted @ 2021-07-20 20:00  希儿·芙乐艾  阅读(24)  评论(0)    收藏  举报