使用异或交换两整数###与运算判断奇偶
1.异或运算进行交换(只能是整型)
异或运算有两个特点: (1)一个数异或本身恒等于0;(2)一个数异或0恒等于本身。
function swap(a, b) {
a = a ^ b; // 以a为临时变量
b = a ^ b; // b=a^b => b=(a^b)^b => a^(b^b) => a
a = a ^ b; // a=a^b => a=a^(a^b) => (a^a)^b => b
}
2.异或运算进行交换(只能是整型)
一般判断奇偶数是用 num % 2 == 0 来判断,如果为true则为偶数,为false则为奇数。
偶数在二进制里面,最后一位为0,奇数则为1。所以可以通过与1做位与运算判断奇偶数。(num & 1) == 0 如果结果为true则为偶数,为false则为奇数。效率比取余运算高的多。