进制介绍
对于整数,有四种表示方式:
二进制:0、1,满2进1,以0b或0B开头。
十进制:0-9,满10进1。
八进制:0-7,满8进1,以数字0开头表示。
十六进制:0-9及A(10)-F(15),满16进1,以0x或0X开头表示。此处的A-F不区分大小写。
举例说明 BinaryTest.java
//演示四种进制
//
public class BinaryTest{
//编写一个main方法
public static void main (String[]args){
//n1 二进制
int n1 = 0b1010;
//n2 10进制
int n2 = 1010;
//n3 8进制
int n3 = 01010;
//n4 16进制
int n4 = 0X10101;
System.out.println("n1="+n1);
System.out.println("n2="+n2);
System.out.println("n3="+n3);
System.out.println("n4="+n4);
}
}
进制转换介绍
1.1二进制转换成十进制示例
规则:从最低位(右边)开始,将每个位上的数提取出来,乘以2的(位数-1)次方,然后求和。
案例:请将0b1011转成十进制的数。
0b1011 = 1 * 2的(1-1)次方+1 * 2的(2-1)次方+0 * 2的(3-1)次方+
1 * 2的(4-1)次方 = 1+2+0+8 = 11
1.2八进制转换成十进制示例
规则:从最低位(右边)开始,将每个位上的数提取出来,乘以8的(位数-1)次方,然后求和。
1.3十六进制转换成十进制示例
规则:从最低位(右边)开始,将每个位上的数提取出来,乘以16的(位数-1)次方,然后求和。
2.1十进制转换成二进制
规则:将该数不断除以2,直到商为0为止,然后将每步得到的余数倒过来,就是对应的二进制。
2.2十进制转八进制
规则:将该数不断除以8,直到商为0为止,然后将每步得到的余数倒过来,就是对应的八进制。
2.3十进制转换成十六进制
规则:将该数不断除以16,直到商为0为止,然后将每步得到的余数倒过来,就是对应的十六进制。
3.1二进制转换成八进制
规则:从低位开始,将二进制数每三位一组,转成对应的八进制数即可。
案例:请将0b11010101转成八进制
0b11(3)010(2)101(5)=>0325
3.2二进制转换成十六进制
规则:从低位开始,将二进制数每四位一组,转成对应的十六进制数即可。
案例:请将0b11010101转成十六进制
0b1101(D)0101(5)=>0XD5
4.1八进制转换成二进制
规则:将八进制数每1位,转成对应的一个3位的二进制数即可。
案例:请将0237转成二进制
02(010)3(011)7(111)=>0b10011111
4.2十六进制转换成二进制
规则:将十六进制数每1位,转成对应的一个4位的二进制数即可。
案例:请将0x23B转成二进制
0x2(0010)3(0011)B(1011)=>0b001000111011