当前位置 : 主页 > 编程语言 > java >

Java十进制转二、八、十六进制方法

来源:互联网 收集:自由互联 发布时间:2022-07-19
本文代码总结了十进制转二进制、八进制、十六进制的方法。 注意:输入参数不支持负数。 目录 ​​一、十进制转二进制​​ ​​(1)使用系统函数​​ ​​(2)不使用系统函数​


 本文代码总结了十进制转二进制、八进制、十六进制的方法。

注意:输入参数不支持负数。

目录

​​一、十进制转二进制​​

​​(1)使用系统函数 ​​

​​(2)不使用系统函数​​

​​二、十进制转八进制​​

​​(1)使用系统函数​​

​​(2)不使用系统函数 ​​

​​三、十进制转十六进制​​

​​(1)使用系统函数​​

​​(2)不使用系统函数 ​​

​​四、程序输出结果​​


一、十进制转二进制

(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));
}
}

Java十进制转二、八、十六进制方法_八进制

上一篇:java获取本地mac地址
下一篇:没有了
网友评论