JAVA基础02 运算符

运算符

运算符优先级由高向低排序正确:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符

  1. 分类
    算术运算符
    +、-、*、/、%、++、–
    **++、–**用法:
    1.单独使用 2.参与运算
    规律:
    如果++、–在操作数的后面就先赋值,再自加1或者自减1
    如果++、–在操作数的前面就先自加1或者自减1,再赋值

赋值运算符
一般形式
= 把右边的值赋值给左边
扩展形式—底层都默认添加了强制类型转换 +=、-=、*=、/=、%=、&=(按位与等)、|=(按位或 等)、^=(按位异或等)、>>=(右移等)、<<=(左移 等)、>>>=(无符号右移等)

比较运算符----结果一定是布尔值
==(恒等于)、!=、>、 <、 <=、 >=

逻辑运算符
用于连接布尔表达式或者布尔值的符号
表达式:用于连接变量或者数据且符合java语法的式子 a+b(算术表达式)

&(逻辑与)、|(逻辑或)、^(逻辑异或)、!(逻辑非)、&&(双与)、||(双或)

&&(双与)、||(双或)(以后常用)
&&和&的运算规律一致,如果&&左边的布尔值是false右边就不再执行—短路
||和|的运算规律一致,如果||左边的布尔值是true右边不执行—短路
如果||在&&前面发生了短路就会把&&短路掉

结论:
&:遇见false则false
|:遇见true则true
^:相同则false不同则true (吸铁石)
!:如果是偶数个就和原来不变是奇数个就取反

位运算符
所有的数据都要转成二进制补码

&(按位与)、|(按位或)、^(按位异或)、~(按位取反)、>>(右移)、<<(左移)、>>>(无符号右移)

00000000 00000000 00000000 00000100 int 4(补码)
00000000 00000000 00000000 00000111 int 7(补码)

操作& 遇0则0 1&任意一个整数==0就是偶数
任意正数&任意一个整数 一定是正数
00000000 00000000 00000000 00000100
00000000 00000000 00000000 00000111

00000000 00000000 00000000 00000100 4

操作| 遇1则1 任意一个负数|任意一个整数 负数
00000000 00000000 00000000 00000100
00000000 00000000 00000000 00000111

00000000 00000000 00000000 00000111 7

操作^ 相同则0不同则1
00000000 00000000 00000000 00000100
00000000 00000000 00000000 00000111

00000000 00000000 00000000 00000011 3

操作~ 所有位按位取反
00000000 00000000 00000000 00000111

11111111 11111111 11111111 11111000 (补码)
11111111 11111111 11111111 11110111 (反码)
10000000 00000000 00000000 00001000 -8

^的扩展
一个整数按位异或上另一个整数两次结果值还是其本身
两个整数值互换
效率:2(按位异或 只能操作整数) 3(求和 一般是整数) 1(中间变量 开发中常用)

所有的移位操作移动的位数都要先取余32再进行移动

左移—往左移动几位就要在最右边(最低位)补几个0;操作>> 正数操作数/2^移动位数
右移----如果是正数右移几位就在最左边(最高位)补几个0;
如果是负数右移几位就在最左边(最高位)补几个1;操作<< 操作数*2^移动位数
无符号右移----无论正负都往右移几位最高位就补几个0;操作>>> 最后得到的一定是正数

三目(元)运算符----最后一定返回的是值
表达式?表达式值1:表达式值2;
执行流程:先去计算表达式的值,如果是true就把表达式值1进行返回,如果是false就把表达式值2进行返回

nextInt() next()(空白字符) nextLine()(空格换行)

2.优先级
() ~ ++ – ! * / % + - << >> >>> 关系 逻辑 & | ^ 三元 赋值

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值