java转换器
A. 如何用java写个整数进制转换器
java实现:整数进制相互转换的方法:
十进制转为二进制、八进制、十六进制, 用 Integer.toXXXString()方法
(1)十进制转为二进制: Integer.toBinaryString(int i);
public static String toBinaryString(inti):以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式。
(2)十进制转为8进制 :Integer.toOctalString(int i);public static String toOctalString(inti):以八进制(基数 8)无符号整数形式返回一个整数参数的字符串表示形式。
(3)十进制转为16进制: Integer.toHexString(int i);
public static String toHexString(inti):以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式。
举例:
Stringbin=Integer.toBinaryString(10);Stringoct=Integer.toOctalString(10);Stringhex=Integer.toHexString(10);2.十六进制、八进制、二进制转为十进制(有两种方法):parseInt() 和valueOf()。
Integer.parseInt(String s,int radix);
public static int parseInt(String s,int radix) throws NumberFormatException{}使用第二个参数作为指定的基数,将字符串参数解析为有符号的整数;
Integer.valueOf(String s,int radix);
public static Integer valueOf(Strings, intradix) throws NumberFormatException{}返回一个 Integer 对象,该对象中保存了用第二个参数提供的基数进行解析时从指定的 String 中提取的值。
举例:
try{inti=Integer.parseInt("a",16);//输出为10进制数10System.out.println(i);}catch(Exceptione){e.printStackTrace();}try{//十六进制转成十进制Stringhex=Integer.valueOf("FFFF",16).toString();System.out.println(hex);//八进制转成十进制Stringoct=Integer.valueOf("12",8).toString();System.out.println(oct);//二进制转十进制Stringbin=Integer.valueOf("0101",2).toString();System.out.println(bin);}catch(Exceptione){e.printStackTrace();}转