java进制转换
B:二进制 D:十进制(默认不写) O:八进制 H:十六进制
因为任意类型 + “” = 字符串类型;而Long(或Integer).valueOf(字符串)类型转换也很方便,所以就用字符串举例吧
//字符串举例
String string2 = "111010";//二进制字符串
String string8 = "72";//八进制字符串
String string16 = "3a";//十六进制字符串
String string10 = "58";//十进制字符串
//二进制转十进制 返回Integer型
System.out.println("2转10:"+Integer.parseInt(string2, 2));
//八进制转十进制 返回Integer型
System.out.println("8转10:"+Integer.parseInt(string8, 8));
//十六进制转十进制 返回Integer型
System.out.println("16转10:"+Integer.parseInt(string16, 16));
//十进制转二进制 返回Integer型
System.out.println("10转2:"+Integer.toBinaryString(Integer.parseInt(string10, 10)));
//八进制转二进制 返回Integer型
System.out.println("8转2:"+Integer.toBinaryString(Integer.parseInt(string8, 8)));
//十六进制转二进制 返回Integer型
System.out.println("16转2:"+Integer.toBinaryString(Integer.parseInt(string16, 16)));
//十进制转八进制 返回Long型
System.out.println("10转8:"+Long.toOctalString(Integer.parseInt(string10, 10)));
//二进制转八进制 返回Long型
System.out.println("2转8:"+Long.toOctalString(Integer.parseInt(string2, 2)));
//十六进制转八进制 返回Long型
System.out.println("16转8:"+Long.toOctalString(Integer.parseInt(string16, 16)));
//十进制转十六进制 返回Long型
System.out.println("10转16:"+Long.toHexString(Long.parseLong(string10,10)));
//二进制转十六进制 返回Long型
System.out.println("2转16:"+Long.toHexString(Long.parseLong(string2,2)));
//八进制转十六进制 返回Long型
System.out.println("8转16:"+Long.toHexString(Long.parseLong(string8,8)));
- toHexString、toOctalString、toBinaryString这三个方法Long和Integer都有,大家根据返回值需要选择
输出:
2转10:58
8转10:58
16转10:58
10转2:111010
8转2:111010
16转2:111010
10转8:72
2转8:72
16转8:72
10转16:3a
2转16:3a
8转16:3a
有用就点个赞吧!!!