黑马程序员技术交流社区

标题: 正数2进制转换成16进制 [打印本页]

作者: 756129186    时间: 2015-10-25 15:20
标题: 正数2进制转换成16进制
2进制转换成16进制,是先转换成10进制吗?
作者: 叶发伟    时间: 2015-10-25 15:35
不用,直接与上15就好
作者: gih146    时间: 2015-10-25 23:43
不需要,可直接转换十六进制
作者: 叶子和大人    时间: 2015-10-26 02:05
查看api就可以了
作者: jlq    时间: 2015-10-26 08:33
位移运算
作者: _let'sgo    时间: 2015-10-26 09:25
应该是这样的,可以用api实现。例如:
1、十进制转任意进制
     int n = 14;
    //十进制转成十六进制  Integer.toHexString(n);
    //十进制转成八进制   Integer.toOctalString(n);
    //十进制转成二进制   Integer.toBinaryString(n);
2、十六进制转任意进制 (先转成十进制再转成各进制)
    //十六进制转成十进制    Integer.valueOf("FFFF",16).toString();
    //十六进制转成二进制    Integer.toBinaryString(Integer.valueOf("FFFF",16));
    //十六进制转成八进制    Integer.toOctalString(Integer.valueOf("FFFF",16));
3、八进制转成任意进制 (先转成十进制再转成任意进制)
    //八进制转成十进制    Integer.valueOf("576",8).toString();
    //八进制转成二进制    Integer.toBinaryString(Integer.valueOf("23",8));
    //八进制转成十六进制    Integer.toHexString(Integer.valueOf("23",8));
4、二进制转任意进制(先转成十进制再转成任意进制)
//二进制转十进制    Integer.valueOf("0101",2).toString();
//二进制转八进制    Integer.toOctalString(Integer.parseInt("0101", 2));
    //二进制转十六进制    Integer.toHexString(Integer.parseInt("0101", 2));
作者: sharplance    时间: 2015-10-26 10:52
如果是自己写程序转换的话,原理是取最低四位的值,转换成十进制数,10 到 15 再换成 A 到 F,然后进行无符号右移四位,再取最后四位转换,直到最后四位全为零。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2