位操作特点
1、利用或操作’|'与空格将英文字符转换为小写
('a' | ' ') = 'a'
('A' | ' ') = 'a'
2、利用与操作’&'与空格将英文字符转换成大写
('b' & ' ') = 'B'
('B' & ' ') = 'B'
3、利用异或操作’^'与空格进行英文字符大小写转换
('c' ^ ' ') = 'C'
('C' ^ ' ') = 'c'
4、不用临时变量,交换两个数
a ^= b
b ^= a
a ^= b
5、加一
n = 1
n = -~n
6、减一
n = 2
n = ~-n
7、判断两个数是否异号
x = -1
y = 2
f = ((x ^ y) < 0) true
8、清除数字n的二进制表示中的最后一个1
n & (n - 1)
位操作题目
leetcode 191、231、136、268