十进制转二进制
代码如下 | 复制代码 |
classDecToBin { publicstaticvoidmain(String[] args) { //System.out.println("Hello World!"); longdec = -9223372036854775807l; // -9223372036854775808 这个数不行,不要试,嘿嘿 String binStr=""; longdecAbs=Math.abs(dec); while(decAbs>0) { binStr=(decAbs&1)+binStr; decAbs>>=1; } binStr= dec<0?"-"+binStr:dec==0?"0":binStr;
System.out.println(binStr); } } |
十进制转八进制
代码如下 | 复制代码 |
classDecToOct { publicstaticvoidmain(String[] args) { //System.out.println("Hello World!"); longdec=-0;//有-0 吗? String octStr=""; longdecAbs=Math.abs(dec); while(decAbs>0) { octStr=(decAbs&7)+octStr;// decAbs>>=3; } octStr= dec<0?"-"+octStr:dec==0?"0":octStr; System.out.println(octStr); } } |
十进制转十六进制
代码如下 | 复制代码 |
classDecToHex { publicstaticvoidmain(String[] args) { System.out.println("Hello World!"); longdec=-1;//计算器的负数不会弄 -。- String hexStr=""; longdecAbs=Math.abs(dec); while(decAbs>0) {longlastFour=decAbs&15; if(lastFour>9) hexStr=(char)('A'+lastFour-10)+hexStr; elsehexStr=lastFour+hexStr; decAbs>>=4; } hexStr= dec<0?"-"+hexStr:dec==0?"0":hexStr; System.out.println(hexStr); } } |