Java基于字符串的进制转换(2、8、16进制与10进制的相互转换)

// 2,8,16进制转换成10进制

Integer b = Integer.parseInt("1001", 2); // 2进制转10进制
Integer o = Integer.parseInt("12", 8); // 8进制转10进制
Integer h = Integer.parseInt("123ABC", 16); // 16进制转10进制

或者

Integer b = Integer.valueOf("1001", 2); // 2进制转10进制
Integer o = Integer.valueOf("12", 8); // 8进制转10进制
Integer h = Integer.valueOf("123ABC", 16); // 16进制转10进制

或者

// 基于BigInteger的进制转换

BigInteger b = new BigInteger("1001", 2); // 2进制转10进制
BigInteger o = new BigInteger("12", 8); // 8进制转10进制
BigInteger h = new BigInteger("123ABC", 16);// 16进制转10进制

// 10进制转2,8,16进制

String tb = Integer.toBinaryString(b); // 10进制转2进制
String to = Integer.toOctalString(o); // 10进制转8进制
String th = Integer.toHexString(h); // 10进制转16进制

或者

String tb = Integer.toString(b, 2); // 10进制转2进制
String to = Integer.toString(o, 8); // 10进制转8进制
String th = Integer.toString(h, 16);// 10进制转16进制

或者

// 基于BigInteger的进制转换

BigInteger b = new BigInteger("1001", 2); // 2进制转10进制
BigInteger o = new BigInteger("12", 8); // 8进制转10进制
BigInteger h = new BigInteger("123ABC", 16);// 16进制转10进制
String tb = b.toString(2); // 10进制转2进制
String to = o.toString(8); // 10进制转8进制
String th = h.toString(16); // 10进制转16进制

猜你喜欢

转载自www.cnblogs.com/clgmxxh/p/12203815.html