首先废话不多说,我们先来看代码
public class Test {
public static void main(String[] args) {
int a=10;
for (int i = 31; i>=0; i--) {
System.out.print(a>>i&1);
}
结果如上;10的二进制就是1010,代码就是正确的。
怎么做到的呢?
我们先来一步步分析。
首先我们知道int 有4个字节,对应32个比特,最高位是符号位。
第二步我们将00000000000000000000000000001010,向右移动31位
每次将这些数字向左移动一位,并且&1,就能得出当前进来的数值。
10进制转化为16进制
//利用自带的模块实现10进制转换为16进制
String str = Integer.toHexString(26);
System.out.println(str);