Java 进制
作者:互联网
!!!进制是程序员的必备技能!!!
Java 中 对于整数有四种表示方式:
- 二进制:二进制 里只有
0
,1
满 2 进 1 以0b
/0B
开头表示 - 八进制:使用
0~7
,满 8 进 1,以数字0
开头表示 - 十进制:使用
0~9
,满 10 进 1 - 十六进制:使用
0~9 A~F
,满 16 进 1,以0x
/0X
开头表示 (字母不区分大小写)
// 二进制
int bin_ = 0b11011; // 转换为十进制表示 27
// 八进制
int oct_ = 011011; // 转换为十进制表示 4617
// 十进制
int dec_ = 11011; // 十进制 11011 就是 11011
// 十六进制
int hex_ = 0x11011; // 转换为十进制表示 69649
进制的转换
其他进制转十进制
其他进制转 十进制
的公式如下:
从最低位开始,每位乘 进制数
^位数-1
的和
如上二进制的 11011
套用上面的公式,转换十进制过程如下:
11011
= 1 * 2^(1-1) + 1 * 2^(2-1) + 0 * 2^(3-1) + 1 * 2^(4-1) + 1 * 2^(5-1)
11011
= 1 + 2 + 0 + 8 + 16
11011
= 27
其他进制转 十进制
套用方式一样
这是我自己对二进制的记法:
把每位对应的数字记下来,例如 11111111
每位对应的分别是上一位的2次方 128 64 32 16 8 4 2 1
用我的记法把 10010110
根据上面每位对应的数字 128
+ 0
+ 0
+ 16
+ 0
+ 4
+ 2
+ 0
我们只需要求和就行了,不需要计算 ^位数 - 1的结果了,因为 2 的次方是最好记的,也是最常用的。
十进制转其他进制
公式:将该数不断除以进制数
,直到商为 0,然后将每步得到的余倒过来
二进制转八进制
二进制
转 八进制
的公式如下:
从最低位开始每三位一组,每组转成对应的八进制数
如:0b11100101
拆分成每三个一组为 11
100
101
转成对应的八进制
就是 3
4
5
转换结果就是:345
二进制转十六进制
二进制
转 十六进制
的公式如下:
从最低位开始每四位一组,每组转成对应的十六进制数
如:0b1110010110
拆分为四位一组就是 11
1001
0110
转换为对应的十六进制就是 3
9
6
转换结果就是 396
八进制转二进制
规则:将八进制
数每一位,转换成对应的一个三位的 二进制
数即可。
例如 0372
分别对应011
111
010
结果 0b000011111010
十六进制转二进制
规则:将十六进制
数每一位,转换成对应的一个四位的 二进制
数即可。
例如 0x23b
分别对应 0010
0011
1011
结果:0b001000111011
标签:十六进制,Java,进制,二进制,11011,八进制,十进制 来源: https://www.cnblogs.com/jwyqn/p/16115126.html