其实位运算很强大的,因为计算机识别01(二进制代码),位运算会很高效
比如我们有一个数为5我们判断他的奇偶性可以通过%2看余下的数为0或者1来确定奇偶性
怎么通过位运算来判断?
比如5 ,二进制代码为101
我们可以通过将5与1做与运算,是吧。
就是将101 与 001 进行&运算
其实我们通过二进制判断奇偶的话,我们可以看该数二进制的最后一位是0的话那么就为偶数。是1的话就为奇数
为什么?因为二进制除了最后一位,其他位都是2的幂次方,必然是为偶数的,那么我们可以通过最后一位为0或者1来判断
我们每次都和1做与运算就可以求出最后一位与1运算的结果来判断奇偶了
代码:
public class Testjiou{
public static void main(String[] args){
int nums = 99;
(nums+ "是: " + (((nums&1)==0)?"偶数":"奇数"));
}
}
这里用了一个三元运算符,注意括号匹配