Java十进制转二、八、十六进制方法
本文代码总结了十进制转二进制、八进制、十六进制的方法。
注意:输入参数不支持负数。
目录
一、十进制转二进制
(1)使用系统函数 #
Integer.toBinaryString(n)
(2)不使用系统函数#
/**
* 十进制转二进制
*
* @param n
* @return
*/
public static String tobin(int n) {
if (n == 0)
return "0";
String bin = "";
while (n != 0) {
bin = n % 2 + bin;
n = n / 2;
}
return bin;
}
二、十进制转八进制
(1)使用系统函数#
Integer.toOctalString(n)
(2)不使用系统函数 #
/**
* 十进制转八进制
*
* @param n
* @return
*/
public static String octal(int n) {
if (n == 0)
return "0";
StringBuilder o = new StringBuilder();
while (n > 0) {
o.append(n % 8);
n = n / 8;
}
return o.reverse().toString();
}
三、十进制转十六进制
(1)使用系统函数#
Integer.toHexString(n)
(2)不使用系统函数 #
/**
* 十进制转十六进制
*
* @param n
* @return
*/
public static String tohex(int n) {
String hexStr = "";
long decAbs = Math.abs(n);
while (decAbs > 0) {
long lastFour = decAbs & 15;
if (lastFour > 9) {
hexStr = (char) ('A' + lastFour - 10) + hexStr;
} else {
hexStr = lastFour + hexStr;
}
decAbs >>= 4;
}
hexStr = n < 0 ? "-" + hexStr : n == 0 ? "0" : hexStr;
return hexStr;
}
四、程序输出结果
public static void main(String[] args) {
System.out.println("十进制\t二进制\t八进制\t十六进制");
for (int n = 0; n <= 16; n++) {
String bin = tobin(n);
String oct = octal(n);
String hex = tohex(n);
System.out.println(String.format("%s\t%s\t%s\t%s\t", n, bin, oct, hex));
}
}
作者:YangRoc
出处:https://www.cnblogs.com/YangRoc/p/17186276.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
标签:
java
如果本篇文章有帮助到你,你可以请作者喝杯咖啡表示鼓励 ☕️
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具