服务器之家

服务器之家 > 正文

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

时间:2020-08-04 14:40     来源/作者:菊花缝纫师

十进制转二进制

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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);
 }
}

十进制转八进制

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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);
 }
}

十进制转十六进制

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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);
 }
}

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

原文链接:http://www.cnblogs.com/couldDog/p/6371838.html

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
返回顶部