java中进制之间的转换

时间:2022-05-13 23:52:38

//十进制转其他进制

Integer.toHexString(10);  //将10转换为十六进制,返回字符串类型

Integer.toOctalString(10);  //将10转为八进制,返回字符串类型

Integer.toBinaryString(10);  //将10转为二进制,返回字符串类型

//其他进制转十进制

//十六进制转十进制,例如:0xFFFF

Integer.valueOf("FFFF",16).toString();  //valueOf()方法返回Integer类型,调用toString()返回字符串

Integer.parseInt("FFFF",16);  //返回int基本数据类型

Integer.toString(0xFFFF);  //该方法可直接传入表示十六进制数字的基本数据类型,方法返回字符串

//八进制转十进制,例如:017

Integer.valueOf("17",8).toString();  //valueOf()方法返回Integer类型,调用toString()返回字符串

Integer.parseInt("17",8);  //返回int基本数据类型

Integer.toString(017);  //该方法可直接传入表示八进制数字的基本数据类型,方法返回字符串

//二进制转十进制,例如:0101

Integer.valueOf("0101",2).toString();  //valueOf()方法返回Integer类型,调用toString()返回字符串

Integer.parseInt("0101",2);  //返回int基本数据类型

//对于二进制、八进制和十六进制之间的转换,可先转换为十进制,在用十进制转多进制的相应方法进行转换

//例如将十六进制0xFF转为二进制

Integer.toBinaryString(Integer.valueOf("FF",16));  

//或者

Integer.toBinaryString(Integer.parseInt("FF",16));

//对于输入的表示十六进制的字符串,需要先截取数字子串,再用valueOf()或parseInt()方法进行转换为十进制

//例如输入0xFF

String s = "0xFF";

Integer.valueOf(s.subString(2,s.length()),16);

//对于valueOf方法,可以用于基本数据类型的装箱及多进制到十进制之间的转换。