条件运算符与位运算符

位运算符(了解即可):
把操作数转为二进制,对二进制的操作数进行某种规则的运算,最终得到的二进制的结果再转为十进制
一下三个运算符,当操作数为Boolean类型作为逻辑运算符,操作数为整数,作为位运算符

&:两边的操作数转为二进制,同一个位置的两个数,一个为0就是0,两个都为一才是1,结果转为十进制
|:两边的操作数转为二进制,同一个位置的两个数,一个为1就是1,两个都为0才是0,结果转为十进制
^ :两边的操作数转为二进制,同一个位置的两个数,相同为0,不同为1,结果转为十进制

位移运算符
<< 左移  : 第一个操作数转为二进制,向左移动第二个操作数个位置,空位补0,结果转为十进制
>> 右移  : 第一个操作数转为二进制,向右移动第二个操作数个位置,移出的位置舍弃,结果转为十进制
规律: 
左移: 相当于*2的倍数    a<<b ==> a*2^b
右移: 相当于/2的倍数    a>>b ==> a/2^b
        
位运算符的执行效率较高,因为针对二进制的数据
当想要对2或者2的倍数进行乘除,建议使用位移运算符效率更高
 

条件运算符:
Boolean表达式:  ?  值1:值2

boolean表达式  : 值为boolean类型的表达式
1)计算表达式,得到一个boolean结果
2)如果结果为true,条件运算符结果为值1
3)如果结果为false,条件运算符结果为值2

boolean x = true?true:false?false:false;
        boolean y = (true?true:false)?false:false; //自左向右结合
        boolean z = true?true:(false?false:false);  //自右向左结合
        
        //y=false   z=true
        System.out.println(x);
        System.out.println(y);
        System.out.println(z);
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值