A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

//这个 是10进制转16进制 的代码 ,我实在 找不出那里 有问题,输出如图片CCCCCCCC,不知道为什么,求助朋友 们啊。

class Zheban
{
        public static void main(String[] args)
        {
                getmun(60);       
        }
        public static void getmun(int key)
        {
        StringBuffer sb=new StringBuffer();
                for(int x=0;x<8;x++)
                {
                        int mun=key&15;
                if(mun>9)       
                        sb.append((char)(mun-10+'A'));
                else
                        sb.append(mun);
                mun=mun >>> 4;
                }
                System.out.print(sb.reverse());       
        }
}


7A56.tmp.png (53.23 KB, 下载次数: 9)

7A56.tmp.png

9 个回复

倒序浏览
  mun=mun >>> 4;  你这写错了:应该是  key=key >>> 4;
回复 使用道具 举报
key是要操作的数值,应该对其进行无符号右移4位。mun是四位二进制转换为十六进制后的结果。
回复 使用道具 举报
利用Integer类的方法,一步就可完成
回复 使用道具 举报
丿若恋灬如初 发表于 2016-3-20 20:46
mun=mun >>> 4;  你这写错了:应该是  key=key >>> 4;

是的,谢谢回复
回复 使用道具 举报
XER 发表于 2016-3-20 22:22
利用Integer类的方法,一步就可完成

这个 还不懂,还没有学到那里
回复 使用道具 举报
huangkai521 发表于 2016-3-20 22:05
key是要操作的数值,应该对其进行无符号右移4位。mun是四位二进制转换为十六进制后的结果。 ...

恩,是的,敲着代码蒙逼了,,谢谢啦
回复 使用道具 举报
这个以后开发用不到了吧
回复 使用道具 举报
赵国政 发表于 2016-3-21 00:59
这个以后开发用不到了吧

恩,,这个只是基础,现在打基础啊
回复 使用道具 举报
搞清其中的原理还是很有必要的嘛
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马