java 与表达式_java中的运算符与表达式

运算符与表达式

运算符分类:

0.赋值运算符 =

1.算数运算符 + - * / %

2.比较运算符 < > == <= >= !=

3.逻辑运算符 & | ! && ||

4.位运算符 & | ~ << >> ^

5.一元运算符 ++ -- += -= *= /= %=

6.二元运算符

7.三元运算符 变量=条件?值1:值2;

*逻辑运算符 & | ! && || (与或非)

*注意:逻辑运算符左右两边所存放的变量或者表达式必须是布尔类型的

*运算公式:

非:真非为假,假非为真

与:

true 与 true = true

true 与 false = false

false 与 true = false

false 与 false = false

或:

true 或 true = true

true 或 false = true

false 或 true = true

false 或 false = false

&和&&的区别

&(单位与):不管‘与’符号左边的逻辑运算结果是真还是假,都会判断符号右边的结果,耗时。

&&(短路与):如果‘与’符号左边的结果为假,就不会再判断右边的运算结果,因为最终的结果已经确定,为假。省时

|和||的区别

|(单位或):不管‘或’符号左边的逻辑运算结果是真还是假,都会判断符号右边的结果,耗时。

||(短路或):如果‘或’符号左边的结果为真,就不会再判断右边的运算结果,因为最终的结果已经确定,为真。省时

*位运算符 & | ~ << >> ^

运算时:将 1 看成 true ,0看成false

& | ~ 与逻辑运算符公式一样

1010-0110 = 166

0110-1010 = 106

1010-0110

&0110-1010

---------------

0010-0010 = 34

1010-0110

|0110-1010

---------------

1110-1110=238

1010-0110

~0101-1001=89

-167

<< 左移

8<<3=64 8对应的二进制数项做移动三个单位

相当于乘法运算 8 * 8=64

0000-1000

0100-0000=64

>> 右移

9 >> 2 = 2 9对应的二进制数向右移动两个单位

相当于除法运算 9 / 4=2

0000-1001

0000-0010 = 2

异或 ^

异或:相同为假,不同为真

true 异或 true = false

true 异或 false = true

false 异或 true = true

false 异或 false = false

结论:任何数与0异或,结果都等于这个数。

相同的两个数之间异或,结果为0

多个值之间相互异或时,异或满足交换律。

一元运算符 ++ -- += -= *= /= %=

指,只经过一次运算就完成赋值和运算结果的功能

++ 自增 每次自增1

i++和++i

==>i=i+1;

i++与++i的区别

++i先自增再运算

i++先运算再自增

-- 自减

i-- --i ==>i=i-1;

自增 10 ==>i=i+10;

+=:自增n

i+=10;==>i=i+10;

*三元运算符 变量=条件?值1:值2;

经过三次运算得到结果:

1.判断条件是否成立(条件运算符)

2.如果条件成立,取值1,否则取值2 。

3.将取出的值赋值给变量(赋值运算符)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值