【黑马程序员】Java基础01:进制之间的互相转换

---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

进制的种类:

  当前的计算机系统使用的都是二进制数据,它是用01两个数字来表示的。进位规则是“逢二进一”,借位规则是“借一当二”。目前用到的所有字符都在计算机中有对应的二进制表现形式,我们用到的一般是UTF-8GBK码表,能够兼容中英文字符。

  在计算机中,还有一些其他的数据表现形式,如:十进制、八进制、十六进制。


进制转换的原理介绍:

1、任意进制----->十进制

2进制转10进制

1110 = 0*2^0 + 1*2^1 + 1*2^2 + 1*2^3  ---> 即以2为底,位数减1的次幂运算(个位次幂为0,十位为1,依次递增),再乘以当前位数值。

= 0 + 2 + 4 + 8 = 14

可以理解为:

1   1   1    0

*

8   4   2    1 = 14

 

其实8进制,16进制,转换成10进制,也是用此思想。

8进制的4510进制:4*8^1+5*8^0=37 ---> 即以8为底,位数减1的次幂运算(个位次幂为0,十位为1,依次递增),再乘以当前位数值。

 

2、十进制转----->任意进制

10进制转2进制:就是除2运算。82进制:8每次除2的余数是0-0-0-12进制倒写,即1000

10进制转8进制:就是除8运算。308进制:30每次除8的余数是6-38进制倒写,即36

 

3、二进制<----->八进制

可以理解为三个2进制表示的10进制数,代表一个8进制位

如:1110 = 001  110 ---> 001表示10进制的1110表示10进制的6,变成8进制就是16

 

8进制转2进制就是逆向思维,8进制的522进制,52进制是10122进制是010,即为101010

 

4、二进制<----->十六进制

可以理解为四个2进制位表示的10进制数,代表一个16进制位

如:0101 1010  --->  每四个2进制就是510,即5A

16进制转2进制,逆向思维。

 

5、八进制<----->十六进制

如果需要8进制转16进制,可以把8进制转成2进制,再转成16进制,转换思维即可。

168,反向思维。

 

6、负数的二进制

就是把对应正数的二进制取反,再加1。注:负数的二进制最高位都是1

如:求-6的二进制

6的二进制是110,取反后是11111111-11111111-11111111-11111001+1就是11111111-11111111-11111111-11111010

所以-6的二进制就是11111111-11111111-11111111-11111010,int型是4个8位。

  

7、学习过了Integer对象之后,有10进制和任意类型的互相转换。

方法一:10转其它类型

Integer.toBinaryString(int i)102

Integer.toOctalString(int i)108

Integer.toHexString(int i)1016

方法二:其它类型转10

Integer.parseInt("需要转换的数",进制形式):把2进制、8进制或16进制转换成10进制。

如:Integer.parseInt("1110",2) --->2进制的1110转成10进制;

         Integer.parseInt("3c",16) --->16进制的3C转成10进制;

 

有了此二种方法,对于任意类型进制的互转,比如2进制转8进制,可以先把210,再把108,用面向对象的思路解决。


---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值