JavaSE 基础(三) 运算符

目录

一.什么是运算

二.算数运算符 

1.加减乘除模

1.除 /

 2.模 %

2.增量运算符

 3.自增自减

1.在单行中,前置和后置无差别

2.在运算时,前置后置有差别

三.关系运算符 

四.逻辑运算符(重点)

1.逻辑与(短路与)    && 

2.逻辑或(短路或)   ||

3.逻辑非 !

4.位运算符

五.移位运算符


前言

Hi~ 你好! 

欢迎点击我的博客 : )       

这是我的学习总结,希望也能帮助到你

我的博客地址:hi~,我在这里~,欢迎关注哦,

三连不迷路,优质内容持续更新!

一.什么是运算

运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算

计算机最基本用途之一:执行数学运算

表达式=变量+运算符

二.算数运算符 

1.加减乘除模

加减乘除的运算不过多说明,主要来阐述除和模

1.除 /
        除 : /
        System.out.println(7/2);            结果取整 
        System.out.println((float) 7/2);    对7强转为浮点数,结果为浮点数
        System.out.println(7/(float)2);     对2强转为浮点数,结果为浮点数
        System.out.println((float) (7/2));  对7/2先运算为整数,在强转为浮点数

        结果为: 3   3.5   3.5   3.0
 2.模 %
        System.out.println(10%3);      商3  余1
        System.out.println(10%-3);     商-3 余1
        System.out.println(-10%3);     商-3 余-1
        System.out.println(-10%-3);    商3  余-1
        System.out.println(12.5%3);    商4  余0.5
 
结果为:   1
         1
        -1
        -1
        0.5

2.增量运算符

+=    -=     *=    /=

        short sh = 1;
        System.out.println(sh);
        short sh2 = 2;
        sh = sh + 1;   short    不足4个字节,类型提升 
                      右边是int  左边是short  会报错

        sh +=1;        不报错,相当于帮助进行了强转
        System.out.println(sh);

        结果为 : 1
                2 

 3.自增自减

1.在单行中,前置和后置无差别
        int a = 0;
        int b = 0;
        a++;
        ++b;
        System.out.println(a);  1
        System.out.println(b);  1
2.在运算时,前置后置有差别
        自增运算,自减同理
        int a = 0;
        int b = 0;
        int c =  a++;  先赋值给c ,再将a+1
        int d = ++b;   先给b+1,再赋值给d;
        System.out.println(c);   0
        System.out.println(d);   1
        System.out.println(a);   1  值已经改变
        System.out.println(b);   1

三.关系运算符 

==         !=         <        >        <=      >= 

结果都是boolean类型,要么是true,要么是false 

        int a  = 10;
        int b  = 2;
        int c  =6;

        boolean flag = a > b;
        System.out.println(flag);  true
        boolean flag = a > b> c;   
        报错,a>b先运算成boolean类型,不能再与int类型运算

四.逻辑运算符(重点)

&&     ||      !      结果都是boolean类型

1.逻辑与(短路与)    && 

布尔表达式1&&布尔表达式2要么是true要么是false

特点:1如果表达式1为真,去执行表达式2,如果2也为真,则整体为真

        2.如果表达式1为假,那么就不会执行表达式2

        int a = 1;
        int b =2;
        boolean res1 = (a - b) < 0 && (a + b) > 0; //前真后真
        boolean res2 = (a - b) < 0 && (a + b) < 0; //前真后假
        boolean res3 = (a - b) > 0 && (a + b) > 0;  //前假后真
        System.out.println(res1);//true
        System.out.println(res2);//false
        System.out.println(res3);//false

2.逻辑或(短路或)   ||

布尔表达式1||布尔表达式2

要么是true要么是false

特点:1如果表达式1为真,就不执行表达式2 .整体已经为真,发生短路

        2.如果表达式1为假,就执行表达式2,表达式2为真,整体就为真

        int b =2;
        boolean res1 = (a - b) < 0 || (a + b) > 0; //前真后真
        boolean res2 = (a - b) < 0 || (a + b) < 0; //前真后假
        boolean res3 = (a - b) > 0 || (a + b) > 0;  //前假后真
        boolean res4 = (a - b) > 0 || (a + b) < 0;  //前假后假
        System.out.println(res1);//true
        System.out.println(res2);//true
        System.out.println(res3);//true
        System.out.println(res4);//false

3.逻辑非 !

!+布尔表达式 

        int a  = 1;
        int b =2;
        boolean res = a > b;
        boolean res2 = !res;
        System.out.println(res);
        System.out.println(res2);

4.位运算符

&  按位与    对应位只要有0 结果就是0

|  按位或      对应位只要有1  结果就是1

^ 按位异或   对应位不一样就是1,一样就是0

两个相同的数字异或 结果是0

0^n =n  任何数异或0等于零

按位取反   ~         

五.移位运算符

左移 <<      右边补0,相当于*2                

右移>>       左边 补符号位 , 相当于/2         -1 = 11111111  >>还是-1   

>>> 无符号右移     在左边补零             11111111>>>1   = 01111111

        int a  =128;
        int b  =12;
        int res = a << 1; //相当于*2 
        int    res2 = b >> 1;//相当于/2
        int i = b >>> 1;//相当于/2
        System.out.println(res);//256
        System.out.println(i);//6
       int a =-1;
       int b =-2;
       int c =-3;
        int i = a >> 1; //11111111  -> 1 1111111
        int i1 = b >> 1;  //11111110 -> 1 1111111
        int i2 = c >> 1; //   11111100 -> 11111110
        System.out.println(i); //-1
        System.out.println(i1);//-1
        System.out.println(i2);//-2

三元运算

布尔表达式1?表达式2:表达式3

当表达式1为真时,返回表达式2,否则返回表达式3

 System.out.println((true==true)?(true==true)?false:true:true);//false

 

后记

看到这里,希望能帮到你~

您的点赞 ,收藏 ,关注 是我创作的最大动力!

同时也欢迎在评论区进行交流,共同进步~       

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值