【提问】二/十/十六进制转换-Java板块造梦空间论坛-技术交流-造梦空间论坛

提问二/十/十六进制转换

文章目录[隐藏]

方法一:

利用Java自带的函数进行转换

int i = 50;
		String str1 = Integer.toBinaryString(i);//转二进制
		String str2 = Integer.toHexString(i);//转16进制
		System.out.println(i+"的二进制="+str1+"\n"+i+"的十六进制="+str2);

方法二:

手动转换进制--位运算的运用:

int i1 = 50;
		int i2 = i1 & 15;
		String j = (i2>9)?(char)(i2-10+'A')+"":i2+"";
		int temp = i1>>>4;
		i2 = temp & 15; 
		String k = (i2>9)?(char)(i2-10+'A')+"":i2+"";
		System.out.println("i1="+i1+"\ni2="+i2+"\nj="+j+"\ntemp="+temp+"\nk="+k);
		System.out.println(i1+"的十六进制="+k+""+j);

来个大佬分析一下方法2

请登录后发表评论

    没有回复内容

© 造梦空间论坛