初学java进制转换方面补充学习
进制转换:
基础:
二进制用的数为:0/1
八进制用的数为:0/1/2/3/4/5/6/7
十进制用的数为:0/1/2/3/4/5/6/7/8/9
十六进制用的数为:0/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15
->因为10以上的不好表示,10/11/12/13/14/15 用字母表示 a/b/c/d/e/f
->因此十六进制的数表示为:0/1/2/3/4/5/6/7/8/9/a/b/c/d/e/f
- 二进制转换为十进制
举个栗子: a=100110;
则十进制为 (2^0x0)+(2^1x1)+(2^2x1)+...+2^5x1=0+2+4+0+0+32=38
- 八进制转换为十进制
举个栗子: a=345
则十进制为 (8^0x5)+(8^1x4)+(8^2x3)=5+32+64x3=229
- 十六进制转换为十进制
举个栗子: a=6af
则十进制为 (16^0x15)+(16^1x13)+(16^2x6)=15+16x13+16x16x6=1759
- 十进制转换为十六进制
or
十进制转换为八进制or
十进制转换为二进制
假设十进制数为: asdf/x //x可以是16或8或2 看你转换为什么进制
asdf/x=?....a;
if(?<x) 则 转换后结果为?a
if(?>x) 则 继续往下除
?/x=??....b;
if(?<x) 则 转换后结果为??ba
if(?>x) 则 继续往下除
??/x=???....c;
if(?<x) 则 转换后结果为???cba
if(?>x) 则 继续往下除
后面不举例子了; 通过十进制为媒介, 可以实现四个进制任意转换;
萌新小白, 很可能一些方面写的不对, 欢迎指正; 大家一起变得更强!
版权声明:本文为ypstudy原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。