看不见图啊,不过我到时没有什么难点,我搞了一个函数,实现十进制转2、4、8、16进制的转换,给你参考下,(这个只输出到屏幕,要返回字符串只需简单修改下)
- //进制转换
- public static String chingeJinzhi(int sor,int a)
- {
- char[] arr={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
- char[] result=new char[32],tem;
- int pos=0,offset;
- switch(a)
- {
- default :System.out.println("Error:暂不支持的进制转换");return "Error:暂不支持的进制转换";
- case 0:return "0";
- case 2:offset=1;break;
- case 4:offset=2;break;
- case 8:offset=3;break;
- case 16:offset=4;break;
- }
- while(sor>0)
- {
- result[pos++]=arr[(sor&(a-1))];
- sor=sor>>>offset;
- }
- for(int i=pos-1;i>=0;)
- {
- System.out.print((char)result[i--]);
- }
- return "";
- }
复制代码 |