1.普通java进制方法
java的方法 | 说明 |
---|---|
Integer.toBinaryString(n); | 将数字n转为二进制字符串. |
Integer.bitCount(n); | 数字n转为二进制后1的个数 |
Integer.toOctalString(n); | 将数字n转为八进制字符串 |
Integer.toHexString(n); | 将数字n转为16进制字符串 |
Integer.toString(n, r); | 将数字n转为r进制字符串 |
Integer.parseInt(s, r) | 将r进制的字符串s转为10进制数字 |
2.0x开头的十六进制字符串转换成十进制整数
java的方法 | 说明 |
---|---|
Integer.toString(0xAA); | 此处的0xAA不能用参数,要直接写,不然不识别 |
Integer.parseInt(s, r) | 此处字符串直截取0x后边即可,如:0x8011只需要Integer.parseInt(“8100”, 16),0xAA只需要Integer.parseInt(“AA”, 16) |
3.ip掩码等转换二进制问题,转换时需要将不足8位补齐
举个例子掩码:255.16.0.0 ,255对应的是11111111 ,16对应的是100000 ,两个直接拼接后变成11111111100000
但实际情况应该是 1111111100100000 ,转化二进制的时候应该8位补齐,所以16对应的应为00100000