Java运算符

本文介绍了Java中的算术运算符、赋值运算符、关系运算符、逻辑运算符和位运算符的使用,包括自增、自减、与、或、非等操作,并通过示例展示了它们在实际编程中的应用。此外,还涉及了三元运算符和短路运算的概念。
摘要由CSDN通过智能技术生成

  • 算术运算符:+加,-减,*乘,/除,%取余,++,--
  • 赋值运算符:=把右边赋值给左边
  • 关系运算符:>大于,<小于,>=大于等于,<=小于等于,==等于,!=不等于,instanceof


  • 逻辑运算符:&&与,||或,!非
    • 与:两真为真,真假为假,两假为假
    • 或:两真为真,真假为真,两假为假
    • 非:真假反过来


  • 位运算符:&,|,^,~,>>,<<,>>>
  • 条件运算符?:
  • 扩展赋值运算符:+=,-=,*=,/=
public class Demo1 {
    public static void main(String[] args) {
        //算术运算
        int a =10;
        int b =20;
        long c =1433_2233_3333_333L;
        short d =8;
        byte e = 5;
        int f = 11;
        int aa = a++;//a=a+1   a为10,执行后+1   先给aa赋值10,再自增a为11
        int aaa = ++a;//a=a+1   a为10,执行前+1    先自增a为12(因为上一行已经11了),再给aaa赋值12

        System.out.println(a+b);//30
        System.out.println(a-b);//-10
        System.out.println(a*b);//200
        System.out.println(a/b);//0   应为0.5,int类型没小数,缩略成0
        System.out.println(a/(double)b);//0.5

        System.out.println(b+c+d+e);//143322333333366   其中有long结果就是long类型,同理有double就为double
        System.out.println(b+d+e);//33   int
        System.out.println(d+e);//13    int

        System.out.println(f%a);//1

        System.out.println(aa);//10
        System.out.println(aa);//10
        System.out.println(aaa);//12
        System.out.println(aaa);//12

        //关系运算
        System.out.println(a>b);//F
        System.out.println(a<b);//T
        System.out.println(a==b);//F
        System.out.println(a!=b);//T


        //幂运算2^3     很多运算会使用工具类
        double z = Math.pow(2,3);

        System.out.println(z);//8.0

        //逻辑运算
        boolean x = true;
        boolean y = false;

        System.out.println("x && y:"+(x&&y));//x真y假,x与y假
        System.out.println("x || y:"+(x||y));//x真y假,x或y真
        System.out.println("!(x && y):"+!(x&&y));//x真y假,x与y假,非x与y真

        //短路运算
        int g = 5;
        boolean h = (g<4)&&(g++<10);

        System.out.println(h);//false   (g=5 <4)为假  与运算有假即为假  所以不运算后面的g++  因此g还是5
        System.out.println(g);//5    若&&改为||则为6   或运算两假才为假  所以会继续运算g++   5递增为6

        //位运算:效率极高
        /*
        A = 0011 1100
        B = 0000 1101
        位运算看对应位置的数,第一位0和0,第二位0和0,第三位1和0,第四位1和0,第五位1和1,第六位1和1,第七位0和0,第八位0和1
        A&B = 0000 1100  //与
        A|B = 0011 1101  //或
        A^B = 0011 0001  //0和0、1和1相同则为0,0和1不同则为1
        ~A  = 1100 0011  //取反
        */
        System.out.println(2<<3);//16   2左移3位   2的二进制0000 0001  16的二进制0000 1000  1左移了三位   左移乘2右移除2

        //扩展赋值运算
        int i = 10;
        int j = 20;

        i+=j;//i = i+j
        System.out.println(i);//30   10+20
        i-=j;//i = i-j
        System.out.println(i);//10   30-20

        //字符串连接符 +
        System.out.println(i+j);//30   10+20
        System.out.println(""+i+j);//1020   字符串在前面,后面的+不再是运算而是拼接
        System.out.println(i+j+"");//30   字符串在后面,影响不到前面的+运算,只能影响后面的

        //三元运算符
        int score = 80;
        String type = score <60 ? "不及格" : "及格";//及格    x?y:z 满足x则y否则z   必须掌握
        System.out.println(type);
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值