Java开发中经常需要用到进制转换,例如十进制转二进制,二进制转十进制,十六进制转二进制,十六进制转十进制,八进制转二进制等等,下面来看一些Java进制转换示例吧!
16进制转10进制
int hex2dec = Integer.parseInt("0f",16);
System.out.println(hex2dec);结果:15
2进制转10进制
int bin2dec = Integer.parseInt("1101",2);
System.out.println(bin2dec);结果:13
8进制转10进制
int oct2dec = Integer.parseInt("10",8);
System.out.println(oct2dec);结果:8
16进制转2进制(先将16进制转10进制再转2进制)
String hex2bin = Integer.toBinaryString(Integer.parseInt("0f",16));
//如果想要保留8位二进制则,1111变成00001111
hex2bin = String.format("%8s",hex2bin).replaceAll(" ","0");
System.out.println(hex2bin);结果:00001111
10进制转16进制(以下是两种方式)
String dec2hex = Integer.toHexString(15);
//如果需要两个16进制表示方式,如十进制15的16进制f变成0f,如果x为大写X,则变成0F
String dec2hex2 = String.format("%02x",15);
System.out.println(dec2hex+"==="+dec2hex2);结果:f===0f
8进制转二进制
String hex2oct = Integer.toBinaryString(Integer.parseInt("10",8));
System.out.println(hex2oct);结果:1000