public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt(); //用户输入的整数
System.out.print("奇数位:");
//一个整数在计算机中4个字节共32个比特位,奇数位为1,3,5,7...31
for (int i = 31; i >= 1; i-=2) {
System.out.print(num>>i&1); //通过位运算:右移,然后与1,可得到该位的值
}
//偶数位数字获取方式与奇数位同理
System.out.print("偶数位:");
for (int i = 30; i >=0 ; i-=2) {
System.out.print(num>>i&1);
}
}
输入:2020
运行结果如下: