基本运算符

java语言支持如下运算符:

  • 算术运算符:+、-、*、/、%(模运算:取余)、++、--
  • 赋值运算符:=
  • 关系运算符:>、<、>=、<=、==、!=、!=instanceof
  • 逻辑运算符:&&、||、!
  • 位运算符:&、|、^、~、>>、<<、>>>
  • 条件运算符:?、:
  • 扩展赋值运算符:+=、-=、*=、/=

算术运算:

public class Demo1 {
    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);//30
        System.out.println(a-b);//-10
        System.out.println(a*b);//200
        System.out.println(a/b);//0,0.5得出取整
        System.out.println(a/(double)b);//0.5
        System.out.println(c%a);//5


        long a1=1212123123123123L;
        int b1=123;
        short c1=10;
        byte d1=8;

        //long高于int,自动向上转型
        System.out.println(a1+b1+c1+d1);//1212123123123264,long
        System.out.println(b1+c1+d1);//141,int
        System.out.println(c1+d1);//18,int

        //一元运算符
        int a2=3;
        System.out.println(a2);//3
        int b2=a2++;//执行完这行代码后,先赋值再自增
        System.out.println(a2);//4
        int c2=++a2;//执行完这行代码前,先自增再赋值

        System.out.println(a2);//5  a2是变量,在此过程中增了两次1
        System.out.println(b2);//3
        System.out.println(b2);//3
        System.out.println(c2);//5  c2=1+a=1+4=5
        System.out.println(c2);//5

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

关系运算:

public class Demo2 {
    public static void main(String[] args){

        //关系运算符,返回结果:布尔值 true、false
        int a=10;
        int b=20;

        System.out.println(a>b);//false
        System.out.println(a<b);//true
        System.out.println(a==b);//false
        System.out.println(a!=b);//true
    }
}

逻辑运算:

public class Demo3 {
    public static void main(String[] args){

        boolean a=true;
        boolean b=false;

        System.out.println("a&&b:"+(b&&a));//false,ab都为真才为真
        System.out.println("a&&b:"+(a||b));//true,ab一为真便为真
        System.out.println("a&&b:"+!(a&&b));//true,原本都为真是真,但!不等于所以真变假、假变真

        //短路运算
        int c=5;
        boolean d=(c<4)&&(c++<4);
        System.out.println(d);//false,前者false后者true但是后者不执行,所以下面输出的原本数值
        System.out.println(c);//5
    }
}

位运算:

public class Demo4 {
    public static void main(String[] agrs){
        /*
        a=1001 1101
        b=0000 1011
        ab同1才为1
        a&b= 0000 1001  11才为1
        a|b= 1001 1111  有1为1
        a^b= 1001 0110  相同为0,不同为1
        ~b= 1111 0100   取反
         */

        //<<,>>  二进制
        System.out.println(2<<3);//16,<< *2,(2<<3)=2*2^3
        System.out.println(16>>2);//4
    }
}

以下两种运算主要来偷懒用,但必须掌握
条件运算:

public class Demo5 {
    public static void main(String[] args){
        //x?y:z
        //x==true,结果为y,否则为z

        int num=50;
        String type=num<50?much:less;
        System.out.println(type);//less
    }
}

扩展赋值运算:

public class Demo6 {
    public static void main(String[] args){
        int a=10;
        int b=20;

        a+=b;
        System.out.println(a);//30
        a-=b;
        System.out.println(a);//10
        a*=b;
        System.out.println(a);//200
        a/=b;
        System.out.println(a);//10

    }
}

posted @   马铃侸  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
点击右上角即可分享
微信分享提示