操作符

操作符

基础操作

package operator;

/**
 * @ClassName Demo01
 * @Description TODO
 * @Author Administrator
 * @Date 2021/1/3 16:50
 * @Version 1.0
 **/
public class Demo01 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        int c = 30;
        int d = 40;

        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println((double) a/b);
        System.out.println(a/b); // 0 没有进行类型强制转换,只保留小数点之前的证书部分
    }

}


package operator;

import java.sql.SQLOutput;

/**
 * @ClassName Demo02
 * @Description TODO
 * @Author Administrator
 * @Date 2021/1/4 14:12
 * @Version 1.0
 **/
public class Demo02 {
    public static void main(String[] args) {
        long a = 1212312312312321312L;
        int b = 2343;
        short c = 212;
        byte d = 12;
        char e = 'a';
        System.out.println(a+b+c+d);//Long
        System.out.println(b+c+d);//Int
        System.out.println(c+d);//Int

        System.out.println(e);
        System.out.println((int)e);
        System.out.println(c+e);//Int

        //int、short、byte、char 中任意1种类型在运算符时,先全部转化为int类型,得到int类型的结果
        //System.out.println((String)(c+e));
        //System.out.println((String)(c+d));
    }


}

在这里插入图片描述

关系运算符

package operator;

/**
 * @ClassName Demo03
 * @Description TODO
 * @Author Administrator
 * @Date 2021/1/4 14:56
 * @Version 1.0
 **/
public class Demo03 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        int c = 21;

        //关系运算符,返回的结果是, 正确 true 错误 false   布尔值
        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a==b);
        System.out.println(a!=b);

        //取余,模运算
        System.out.println(c%b);// 21/20=1.......1


    }
}

一元运算符

package operator;

/**
 * @ClassName Demo04
 * @Description TODO
 * @Author Administrator
 * @Date 2021/1/4 15:11
 * @Version 1.0
 **/
public class Demo04 {
    public static void main(String[] args) {
        // 自增++ 自减-- 一元运算符
        int a = 5;
        int b = a++; //先将a的值赋值到b, a再加1。 此时的a=6,而b=5
        int c = ++a;//先将a加1,再将a的值赋值到c。此时的a=7, 而c=7

        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

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

    }

}

逻辑运算符

package operator;

/**
 * @ClassName Demo05
 * @Description TODO
 * @Author Administrator
 * @Date 2021/1/4 15:46
 * @Version 1.0
 **/
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 operator;

/**
 * @ClassName Demo06
 * @Description TODO
 * @Author Administrator
 * @Date 2021/1/4 15:58
 * @Version 1.0
 **/
public class Demo06 {
    public static void main(String[] args) {
        /*
        A = 0011 1100
        B = 0000 1101
        ------------------------------------------------
        A&B = 0000 1100
        A|B = 0011 1101
        A^B = 0011 0001
        ~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
         0010 0000 32
         0100 0000 64
         */
        System.out.println(2<<3);
        System.out.println(64>>3);
    }
}

连接符

package operator;

import javax.sound.midi.Soundbank;

/**
 * @ClassName Demo07
 * @Description TODO
 * @Author Administrator
 * @Date 2021/1/4 16:17
 * @Version 1.0
 **/
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);

        //字符串连接符 + ,String
        System.out.println(""+a+b);
        System.out.println(a+b+"");
    }
}

三元运算符

package operator;

/**
 * @ClassName Demo08
 * @Description TODO
 * @Author Administrator
 * @Date 2021/1/4 16:54
 * @Version 1.0
 **/
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);
    }
}

参考来源1:https://www.bilibili.com/video/BV12J41137hu?p=30

参考来源2:https://www.cnblogs.com/shuaiding/p/11124974.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值