做示意图的网站,永久免费建个人主页,软件库网站源码,北京招聘信息#x1f3c6;本文收录于「滚雪球学Java」专栏#xff0c;专业攻坚指数级提升#xff0c;助你一臂之力#xff0c;带你早日登顶#x1f680;#xff0c;欢迎大家关注收藏#xff01;持续更新中#xff0c;up#xff01;up#xff01;up#xff01;#xf…
本文收录于「滚雪球学Java」专栏专业攻坚指数级提升助你一臂之力带你早日登顶欢迎大家关注收藏持续更新中upupup 前言
在日常开发中进制转换是一个相对常见的需求。比如在网络传输中我们常常需要将数据以二进制的方式进行传输而在前端开发中我们常常需要将数据从十进制转化为十六进制来实现颜色的显示。因此了解进制转换是程序员必备的技能之一。
摘要
本文将介绍 Java 中的进制转换方法。Java 中支持的进制包括二进制、八进制、十进制和十六进制。我们将分别介绍它们之间的转换方法并给出相应的代码实例。
内容
1. 十进制转换成二进制
十进制转换成二进制的方法是不断地除以 2直到商为 0。将每个商的余数从下往上排列就得到了二进制表示。
代码实现如下
public static String decToBinary(int decimal) {StringBuilder binary new StringBuilder();while (decimal 0) {binary.append(decimal % 2);decimal / 2;}return binary.reverse().toString();
}2. 十进制转换成八进制
十进制转换成八进制的方法与转换成二进制的方法类似只是每次除以的数变为了 8。
代码实现如下
public static String decToOctal(int decimal) {StringBuilder octal new StringBuilder();while (decimal 0) {octal.append(decimal % 8);decimal / 8;}return octal.reverse().toString();
}3. 十进制转换成十六进制
十进制转换成十六进制需要用到十六进制中的字母因此需要将余数与字母对应起来。Java 中提供了 Integer.toHexString() 方法可以直接将一个十进制数转换成十六进制字符串。
代码实现如下
public static String decToHex(int decimal) {return Integer.toHexString(decimal);
}4. 二进制转换成十进制
二进制转换成十进制方法与十进制转换成二进制的方法类似只是每次求余的数变为了 2乘的数变为了 2 的幂。
代码实现如下
public static int binaryToDec(String binary) {int decimal 0;int power 0;for (int i binary.length() - 1; i 0; i--) {int digit binary.charAt(i) - 0;decimal digit * Math.pow(2, power);power;}return decimal;
}5. 八进制转换成十进制
八进制转换成十进制的方法与二进制转换成十进制的方法类似只是每次求余的数变为了 8。
代码实现如下
public static int octalToDec(String octal) {int decimal 0;int power 0;for (int i octal.length() - 1; i 0; i--) {int digit octal.charAt(i) - 0;decimal digit * Math.pow(8, power);power;}return decimal;
}6. 十六进制转换成十进制
在 Java 中我们可以使用 Integer.parseInt() 方法将一个十六进制字符串转换成一个十进制数。
代码实现如下
public static int hexToDec(String hex) {return Integer.parseInt(hex, 16);
}代码方法介绍
decToBinary(int decimal)
该方法将一个十进制数转换成一个二进制字符串。
decToOctal(int decimal)
该方法将一个十进制数转换成一个八进制字符串。
decToHex(int decimal)
该方法将一个十进制数转换成一个十六进制字符串。
binaryToDec(String binary)
该方法将一个二进制字符串转换成一个十进制数。
octalToDec(String octal)
该方法将一个八进制字符串转换成一个十进制数。
hexToDec(String hex)
该方法将一个十六进制字符串转换成一个十进制数。
测试用例 十进制转换成二进制 System.out.println(decToBinary(10)); // 1010
System.out.println(decToBinary(255)); // 11111111十进制转换成八进制 System.out.println(decToOctal(8)); // 10
System.out.println(decToOctal(255)); // 377十进制转换成十六进制 System.out.println(decToHex(16)); // 10
System.out.println(decToHex(255)); // ff二进制转换成十进制 System.out.println(binaryToDec(1010)); // 10
System.out.println(binaryToDec(11111111)); // 255八进制转换成十进制 System.out.println(octalToDec(10)); // 8
System.out.println(octalToDec(377)); // 255十六进制转换成十进制 System.out.println(hexToDec(10)); // 16
System.out.println(hexToDec(ff)); // 255全文小结
本文主要介绍了 Java 中的进制转换方法包括十进制、二进制、八进制和十六进制之间的转换。通过本文的介绍我们可以掌握 Java 中进制转换的各种方法并且在实际开发中灵活应用。
附录源码 如上涉及所有源码均已上传同步在Gitee提供给同学们一对一参考学习辅助你更迅速的掌握。
☀️建议/推荐你 无论你是计算机专业的学生还是对编程有兴趣的小伙伴都建议直接毫无顾忌的学习此专栏「滚雪球学Java」bug菌郑重承诺凡是学习此专栏的同学均能获取到所需的知识和技能全网最快速入门Java编程就像滚雪球一样越滚越大指数级提升。
关于我 我是bug菌CSDN | 掘金 | infoQ | 51CTO 等社区博客专家历届博客之星Top30掘金年度人气作者Top4051CTO年度博主Top12华为云 | 阿里云| 腾讯云等社区优质创作者全网粉丝合计15w 硬核微信公众号「猿圈奇妙屋」欢迎你的加入免费白嫖最新BAT互联网公司面试题、4000G pdf电子书籍、简历模板等海量资料。