【day05】Java运算符基础认识

Java运算符

Java语言支持如下运算符

  • 算数运算符: + , - , * , / , %(取余), ++ , –
  • 赋值运算符:=
  • 关系运算符: > , < , >= , <= , == (Java中的等于用两个等号), !=(不等于) , instanceof
  • 逻辑运算符: && , || , ! 与或非
  • 位运算符: & , | , ^ , ~ , >> , << , >>>
  • 条件运算符: ?:
  • 扩展赋值运算符:+= , -= , *= , /=

四则运算

package com.link.operator;

public class Demo01 {
    public static void main(String[] args) {
        //二元运算符
        //Ctrl+d:复制当前行到下一行
        int a=10;
        int b=20;
        int c=25;
        int d=25;

        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/(double)b);//如果不加double,输出结果为0,因为自动舍去小数
    }
}

在这里插入图片描述

运算时的数据类型转换

package com.link.operator;

public class Demo02 {
    public static void main(String[] args) {
        long a=123123123123L;
        int b=123;
        short c=10;
        byte d=8;

        System.out.println(a+b+c+d);//Long 有Long类型的存在结果转为Long
        System.out.println(b+c+d);//Int 一律转为Int运算
        System.out.println(c+d);//Int
    }
}

在这里插入图片描述

关系运算符

package com.link.operator;

public class Demo03 {
    public static void main(String[] args) {
        //关系运算符返回的结果:正确,错误  也即返回的是布尔值

        int a=10;
        int b=20;
        int c=11;

        System.out.println(c%a);//取余数,模运算

        System.out.println(a>b);//a大于b,结果为错
        System.out.println(a<b);//a小于b,结果为对
        System.out.println(a==b);//a等于b,结果为错
        System.out.println(a!=b);//a不等于b,结果为对
    }
}

在这里插入图片描述

自增自减

package com.link.operator;

public class Demo04 {
    public static void main(String[] args) {
        // ++ , --  自增,自减   一元运算符
        int a=3;
        int b=a++;//执行完这行代码后,先给b赋值,再自增
        //a=a+1
        System.out.println(a);
        //a++   a=a+1
        int c=++a;//执行完这行代码后,先自增,再给c赋值

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

        //幂运算 2^3(但Java中没有这种写法)
        double pow = Math.pow(3, 2);//快捷键返回值Alt+两次回车
        System.out.println(pow);
    }
}

在这里插入图片描述

逻辑运算符

package com.link.operator;
    //逻辑运算符
public class Demo05 {
    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));//逻辑非运算:两个变量都为真,结果才为假

        //短路运算
         int c=5;
         boolean d=(c<4)&&(c++<4);//c的返回值为5,说明执行到c<4时确认为假,程序不再往下执行
        System.out.println(d);
        System.out.println(c);
    }
}

在这里插入图片描述

位运算

package com.link.operator;

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

       与 A&B=0000 1100  同位都为1才为1,否则为0
       或 A|B=0011 1101  同位都为0才为0,否则为1
     异或 A^B=0011 0001  相同为0,不同为1
     取反 ~B=1111 0010

     2*8=16 2*2*2*2

     << 左移一位 *2
     >> 右移一位 /2
     效率极高
         */

        System.out.println(2<<3);

    }
}

在这里插入图片描述

扩展赋值运算符

package com.link.operator;

public class Demo07 {
    public static void main(String[] args) {
        int a1=10;
        int a2=10;
        int b=20;

        a1+=b;//等于a=a+b
        a2-=b;//等于a=a-b

        System.out.println(a1);
        System.out.println(a2);

        /*字符串连接符   +,只要在加号运算符两侧出现String即字符串类型,则
        会将相关操作数转换成String,并进行连接
         */
        System.out.println(a1+b);//输出为50
        System.out.println(""+a1+b);//输出为3020
        System.out.println(a1+b+"");//输出为50,字符串的位置有影响,结果表明是先进行的运算
        System.out.println(a1+""+b);//输出3020

    }
}

在这里插入图片描述

条件运算符

package com.link.operator;
    //三元运算符
public class Demo08 {
    public static void main(String[] args){
        //x?y:z
        //如果x==true,则结果为y,否则结果为z
        int score=78;
        String type= score<60?"不及格":"及格";
    //if
        System.out.println(type);
    }
}

在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值