黑马程序员技术交流社区
标题:
求教负数进制之间的转换.....
[打印本页]
作者:
朱金林
时间:
2012-10-8 09:23
标题:
求教负数进制之间的转换.....
本帖最后由 朱金林 于 2012-10-8 17:30 编辑
负数之间的进制怎么转换?比如-1101,-125.-5 怎么转换成其他进制的?
重点说明符号是怎么处理的???
谢谢各位!
作者:
古银平
时间:
2012-10-8 09:42
class ArrayTest7
{
public static void main(String[] args)
{
//toBin(-6);
//toHex(-60);
//toBa(60);
// System.out.println(Integer.toBinaryString(6));
// System.out.println(Integer.toHexString(6));
}
/*
十进制-->二进制
*/
public static void toBin(int num)
{
trans(num,1,1);
}
/*
十进制-->八进制
*/
public static void toBa(int num)
{
trans(num,7,3);
}
/*
十进制-->十六进制
*/
public static void toHex(int num)
{
trans(num,15,4);
}
public static void trans(int num,int base,int offset)
{
if(num==0)
{
System.out.println(0);
return ;
}
char[] chs = {'0','1','2','3'
,'4','5','6','7'
,'8','9','A','B'
,'C','D','E','F'};
char[] arr = new char[32];
int pos = arr.length;
while(num!=0)
{
int temp = num & base;
arr[--pos] = chs[temp];
num = num >>> offset;
}
for(int x=pos; x<arr.length; x++)
{
System.out.print(arr[x]);
}
return ;
}
}
复制代码
看看吧,用数组容器就行,
作者:
郭阳
时间:
2012-10-8 17:19
和正数一样处理。。。。。。
作者:
朱金林
时间:
2012-10-8 17:30
嗯,谢谢各位啦!
作者:
杨华东
时间:
2012-10-8 17:51
路过 打酱油咯
作者:
韩军博
时间:
2012-10-8 17:55
朱金林 发表于 2012-10-8 17:30
嗯,谢谢各位啦!
如果问题解决,就把帖子修改为已解决
作者:
徐传任
时间:
2012-10-8 22:42
看看..............
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2