Java基础之二进制,八进制,十进制,十六进制相互转换

简介: Java基础之二进制,八进制,十进制,十六进制相互转换



前言

二进制,八进制,十进制,十六进制对于java程序员来说是最基础要求,而进制大家可能早就已经了解或者学会,本篇文章主要是对于已经遗忘或者正在学的小伙伴们一个快速入门,本不是很深入,适合快学会进制间的转换。


一、进制介绍

对于整数有四种表达方式:

  • 二进制:0,1,满2进1,以0b或0B开头。int n1=0b1010;
  • 十进制:0~9,满10进1。int n2=19;
  • 八进制:0~7,满8进1,以数字0开头。int n3=01010;
  • 十六进制:0~9,A (10) ~ F(15),满16进1,以0x或0X开头表示,此处A ~ F不区分大小写。int n3=0x10101;

二、进制转换

1.十进制转二进制,八进制,十六进制

方法:转几进制除几进制,取余数,倒叙书写。(不理解看下面步骤就懂了)

步骤如下(示例):

计算器结果,左边数据分别是十六进制,十进制,八进制,二进制。(十进制转为八进制,十六进制均是上述步骤,只不过除数不一样。)

大家可以用上述方法计算19转换为十六进制,八进制与下图对比,验证一下

2.二进制,八进制,十六进制转十进制

方法:n(n=2,8,16)进制转换十进制,该数字各位乘n的阶乘

步骤(示例):


3. 二进制转八进制,十六进制

(1)二进制转八进制

方法:三位一组,四二一

步骤(示例):

(2)二进制转十六进制

方法:四位一组,八四二一

步骤(示例):

4.十六进制,八进制转二进制

方法:与二进制,八进制转十六进制相反

(1)八进制转二进制

方法:一个数一位,找三位数组成

步骤(示例):023转二进制是010011(标准应该是0001 0011或者0b10011)

(2)十六进制转二进制

方法:一个数一位,找四位数组成

步骤(示例):0x27转二进制0010 0111

总结

以上就是今天要讲的内容,本文仅仅简单介绍了进制之间的转换,适合大家快速学会,希望大家多多支持!

相关文章
|
3月前
|
存储 Oracle Java
01 Java概述基础与计算机基础(DOS+进制+原码反码补码)
01 Java概述基础与计算机基础(DOS+进制+原码反码补码)
43 17
|
4月前
|
Java Apache Maven
Java:commons-codec实现byte数组和16进制字符串转换
在上述代码中,`Hex.encodeHexString(bytes)`用于将byte数组转换为16进制字符串,`Hex.decodeHex(hexString)`用于将16进制字符串转换为byte数组。
74 0
|
4月前
|
Java Apache Maven
Java:commons-codec实现byte数组和16进制字符串转换
在上述代码中,`Hex.encodeHexString(bytes)`用于将byte数组转换为16进制字符串,`Hex.decodeHex(hexString)`用于将16进制字符串转换为byte数组。
120 0
|
5月前
|
算法 Java Go
【经典算法】LeetCode 67. 二进制求和(Java/C/Python3/Golang实现含注释说明,Easy)
【经典算法】LeetCode 67. 二进制求和(Java/C/Python3/Golang实现含注释说明,Easy)
66 2
|
5月前
|
算法 Java
Java将16进制的字符串转换为10进制数的方法
【6月更文挑战第27天】Java将16进制的字符串转换为10进制数的方法
1708 0
|
5月前
|
Java
剑指offer_3_前n个数字二进制形式中1的个数(java)
剑指offer_3_前n个数字二进制形式中1的个数(java)
|
5月前
|
Java
剑指offer_2_二进制加法(java)
剑指offer_2_二进制加法(java)
|
5月前
|
Java
java实现字符串与十六进制字符串互转
java实现字符串与十六进制字符串互转
|
12天前
|
安全 Java 测试技术
Java并行流陷阱:为什么指定线程池可能是个坏主意
本文探讨了Java并行流的使用陷阱,尤其是指定线程池的问题。文章分析了并行流的设计思想,指出了指定线程池的弊端,并提供了使用CompletableFuture等替代方案。同时,介绍了Parallel Collector库在处理阻塞任务时的优势和特点。
|
9天前
|
安全 Java 开发者
深入解读JAVA多线程:wait()、notify()、notifyAll()的奥秘
在Java多线程编程中,`wait()`、`notify()`和`notifyAll()`方法是实现线程间通信和同步的关键机制。这些方法定义在`java.lang.Object`类中,每个Java对象都可以作为线程间通信的媒介。本文将详细解析这三个方法的使用方法和最佳实践,帮助开发者更高效地进行多线程编程。 示例代码展示了如何在同步方法中使用这些方法,确保线程安全和高效的通信。
32 9
下一篇
无影云桌面