根据业务开发需求及日常开发需求,整理了所有常用的进制间的转换方法,包括:2进制与10进制互转、10进制与16进制互转、2进制与16进制互转等。全部使用JDK自带的方法,简单、便捷转换到位,执行效率高,有需要的收藏保存哦!
2进制转10进制
//2进制转10进制
public static void from2To10(String s){
int i = Integer.parseInt(s, 2);
System.out.println("二进制["+s+"]转换十进制结果["+i+"]");
}
10进制转2进制
//10进制转2进制
public static void from10To2(Integer i){
String s = Integer.toBinaryString(i);
System.out.println("十进制["+i+"]转换二进制结果["+s+"]");
}
10进制转16进制
//10进制转16进制
public static void from10To16(Integer i){
String s = String.format("%16x", i).trim();
System.out.println("十进制["+i+"]转换十六进制结果["+s+"]");
}
16进制转10进制
//16进制转10进制
public static void from16To10(String s){
int i = Integer.parseInt(s, 16);
System.out.println("十六进制["+s+"]转换十进制结果["+i+"]");
}
2进制转16进制
//2进制转16进制
public static void from2To16(String s){
int i = Integer.parseInt(s, 2); //先把二进制转为十进制数字
String str = String.format("%16x", i).trim(); //再把十进制数字转为十六进制
System.out.println("二进制["+s+"]转换十六进制结果["+str+"]");
}
16进制转2进制
//16进制转2进制
public static void from16To2(String s){
int i = Integer.parseInt(s, 16); //先把十六进制转为十进制数字
String str = Integer.toBinaryString(i); //再把十进制数字转为二进制
System.out.println("十六进制["+s+"]转换十进制结果["+str+"]");
}
运行结果
public static void main(String[] args) {
//2->10
from2To10("1000");
//10->2
from10To2(8);
//10->16
from10To16(666);
//16->10
from16To10("29a");
//2->16
from2To16("10101110");
//16->2
from16To2("ae");
}