题目
将整数的奇偶位互换。
分析
代码实现
public class _05将整数的奇偶位互换 {
public static void main(String[] args) {
int a = 6;
int b = m(a);
System.out.println(b);
}
private static int m(int i) {
//1010 换成16进制是a
int ou = i & 0xaaaaaaaa;//和 1010 1010 1010……做与运算取出偶数位
int ji = i & 0x55555555;//和 0101 0101 0101……做与运算取出奇数位
return(ou>>1)^(ji<<1);//连起来
}
}