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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郑泽霖 中级黑马   /  2014-11-18 13:49  /  989 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

java二进制转十六进制
1无符号右移转进制
代码1:
char[] chs=new char[8];
//chs是引用变量,引用变量指向一个数组对象
int index=chs.length-1;
//length是数组内置属性,得到数组元素个数
//length-1是最后一个元素

//for(int x=0;num!=0&&x<8;x++)
// 4位操作一次,一个整数32位共8次
while(num!=0)
//去掉0000的情况
{
int n=num&15;
//15=...0000 1111,和num进行与操作获取最低四位数
//获取的最低四位数将化为十进制int类型的n1
if(n>9)
chs[index]= ((char)(n-10+’A’));
else
chs[index]=((char)(temp+’0’));
//将数字转化为字符
    index--;
num=num>>>4;
//对num无符号右移4位
}
代码2:
public static String toHex(int num)
{
char[] chs={‘0’,’1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’,’A’,’B’,’C’,’D’,’E’,’F’};
char[] arr=new char[8];
int index=arr.length;
//存放结果的数组
while(num!=0)
{
int temp=num&15;
//15=1111
arr[--index]=chs[temp];
//得出的整数temp查表得到最终的字符串
num=num>>>4;
}
}
......
2九九乘法表
for(int x=1;x<=9;x++)
{
for(int y=1;y<=x;y++)
{
System.out.print(y+”*”+x+”=”+y*x+”\t”);
//\t制表符
System.out.println();
}

2 个回复

正序浏览
额 没看懂是啥
回复 使用道具 举报
java其他进制转换
public static String toHex(int num)
{
char[] chs={‘0’,’1’ };
char[] arr=new char[8];
int index=arr.length;
//存放结果的数组
while(num!=0)
{
int temp=num&1;
arr[--index]=chs[temp];
//得出的整数temp查表得到最终的字符串
//最后的二进制数是个字符串
num=num>>>1;
}
}
......
Integer.toBinaryString
Integer.toOctalString         转八进制
Integer.toHexString              转十六进制
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马