java或运算符左边为真_Java:运算符的问题

本文详细介绍了算术运算符、逻辑运算符及其注意事项,包括取模、整数除法、逻辑运算符的短路行为及位运算符的特殊用途。通过实例展示了如何高效利用这些运算符。

算术运算符:

ee22e7477e12ce22954f81088b7dce5e.png

算术运算符的注意问题

1. 如果对负数取模,可以把模数负号忽略不记,如:5%-2=1。但被模数是负数就另当别论。

-5%3=-2;-5%-3=-2;符号跟被模数(左边)。

2. 对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。

例如:int x=3510;x=x/1000*1000; x的结果是?3000

而3560.0/1000*1000=3560.0

3. “+”除字符串相加功能外,还能把非字符串转换成字符串 ,

例如:System.out.println("5+5="+5+5);//打印结果是?5+5=10

int a = 3; a+=5;几乎等同运算a=a+5;但+=隐含自动转换

比较运算符/关系运算符:

7ebf5ed28ba3177dd5c09a1effba6b05.png

逻辑运算符:

12acc4b1b6fda588521a4a55627e8eff.png

·逻辑运算符用于连接布尔型表达式,在Java中不可以写成33 & x<6 。

· “&”和“&&”的区别(不短路跟短路的区别):

单&时,左边无论真假,右边都进行运算;

双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

“|”和“||”的区别同理,双或时,左边为真,右边不参与运算。

有些时候这个会导致计算不同:

ef024d7d1908f2c1f118f5ae80f05aed.png

3. 异或( ^ )与或( | )的不同之处是:异或左右都为true时,结果为false(true^true==false)。

位运算符:

bd437608ef393e2350dd09eb71855b63.png

位运算是直接对二进制进行运算。(补码)

对于<< 和>>,移n位,就是对原数值乘以(<>)2的n次幂。

d1b230f7d32aabe9730d0fe576cbc8f2.png

· 不要迷糊--负数右移,原符号位上的数也右移!(如果原本该数为负数,按照原理,右移则看最高位补空缺,保证了此时的原数值的符号不变)

特殊使用技巧:

一个数X对同一个数异或两次,所得结果为X:6^3^3=6,3^6^3=6

练习:

11.最有效率的方式算出2乘以8等于几?2<<3?3bb16ad9332512720b1478698ad2b2cb.png

2.对两个整数变量的值进行互换

· 3f3c1d10fbb2a66279bd28e9ceaf4c5e.png

· 6f8b69f65ec03583c5f53118526bb287.png

· 28b2db7595bfc6a4461d25bc53da0a23.png

&运算可用于获取二进制的有效位

015e0771a0885a2e4551be310fae2e24.png

c439691b3f346fa10c5ec372621e34f1.png

异或

63ff7969ef88d7db4cad739ded7aef5d.png

423902bac90cb4276051c72edf766e41.png

位运算符可以操作字符,但结果为int

9b216eb5d2081033cd8282aebf168f46.png

三元运算符:

· 格式:

(条件表达式)?表达式1:表达式2; 括号有时可没有,但为了格式化,写了好。

如果条件为true,运算后的结果是表达式1;

如果条件为false,运算后的结果是表达式2;

· 示例:

获取两个数中大数。

int x=3,y=4,z;

z = (x>y)?x:y;//z变量存储的就是两个数的大数。

运算符优先级:

e5a0e2417c6fb021d9a4b9339c51b935.png

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值