Java 十进制转二、八、十六进制的字符串

时间:2021-05-20

十进制转二进制

class DecToBin{ public static void main(String[] args) { //System.out.println("Hello World!"); long dec = -9223372036854775807l; // -9223372036854775808 这个数不行,不要试,嘿嘿 String binStr=""; long decAbs=Math.abs(dec); while (decAbs>0) { binStr=(decAbs&1)+binStr; decAbs>>=1; } binStr= dec<0?"-"+binStr:dec==0?"0":binStr; System.out.println(binStr); }}

十进制转八进制

class DecToOct{ public static void main(String[] args) { //System.out.println("Hello World!"); long dec=-0;//有-0 吗? String octStr=""; long decAbs=Math.abs(dec); while (decAbs>0) { octStr=(decAbs&7)+octStr;// decAbs>>=3; } octStr= dec<0?"-"+octStr:dec==0?"0":octStr; System.out.println(octStr); }}

十进制转十六进制

class DecToHex{ public static void main(String[] args) { System.out.println("Hello World!"); long dec=-1;//计算器的负数不会弄 -。- String hexStr=""; long decAbs=Math.abs(dec); while(decAbs>0) { long lastFour=decAbs&15; if (lastFour>9) hexStr=(char)('A'+lastFour-10)+hexStr; else hexStr=lastFour+hexStr; decAbs>>=4; } hexStr= dec<0?"-"+hexStr:dec==0?"0":hexStr; System.out.println(hexStr); }}

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章