Java 演示16进制的使用
这里通过Java程序演示了16进制的用法。
在查看Java程序之前,让我们先了解一下16进制这个概念。
16进制 是一种具有16个基础值的数字系统。有16个符号代表16进制数字。这些符号或值分别是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E和F。每个数字代表一个十进制值。
16进制的数字0到9相当于十进制的0到9。
此外,A代表10,B代表11,C代表12,D代表13,E代表14,F代表15。
通过一些示例演示16进制数字系统的使用:
- 将十进制数转换为16进制数
-
将16进制数转换为十进制数
-
将16进制数转换为长整数
-
将长整数转换为16进制数
转换的基本概念
将任意十进制值转换为16进制数。
让我们考虑一个十进制数 775 。
No. | Quotient | Remainder | Hex Value |
---|---|---|---|
775/16 | 48 | 7 | 7 |
48/16 | 3 | 0 | 0 |
3/16 | 0 | 3 | 3 |
因此,对应的十六进制值 = 307
让我们考虑另一个十进制数 1256 .
No. | Quotient | Remainder | Hex Value |
---|---|---|---|
1256/16 | 78 | 8 | 8 |
78/16 | 4 | 14 | E |
4/16 | 0 | 4 | 4 |
因此,对应的十六进制值为 = 4E8
示例1
让我们看一个Java程序,将十进制数转换为相应的十六进制数。
// Java program to convert a decimal
// number into a hexadecimal number
import java.io.*;
public class DectoHexadecimal {
// method to convert decimal to hexadecimal number system
static void decToHexa(int num) {
// char array that stores the hexadecimal number
char[] hexaDec = new char[100];
int j = 0;
while (num != 0) {
// temporary variable to store the remainder
int t = 0;
// storing the remainder in the temp variable.
t = num % 16;
// check if temp < 10
if (t < 10) {
hexaDec[j] = (char)(t + 48);
j++;
} else {
hexaDec[j] = (char)(t + 55);
j++;
}
num = num / 16;
}
// hexadecimal number array in reverse order
for (int k = j - 1; k >= 0; k--)
System.out.print( hexaDec[k]);
}
public static void main(String[] args){
int num = 4698;
System.out.print("Hexadecimal equivalent of " +num+ " is " );
decToHexa(num);
}
}
输出
Hexadecimal equivalent of 4698 is 125A
这个程序是用来演示十六进制数系统的工作原理的。在这里,一个十进制数被分配给一个变量,并使用自定义逻辑将其转换为相应的十六进制数。
示例2
让我们看一个Java程序,使用预定义的函数 toHexString 来将一个十进制数转换为对应的十六进制数,这个函数是一个 库函数 。
// Java Program to demonstrate the Usage of HexaDecimal
import java.io.*;
public class DecimaltoHex {
// Main method
public static void main(String[] args){
//Decimal number to be converted
int d = 986;
// Using the toHexString() method to convert decimal value to its
// corresponding hexadecimal value
String hexd = Integer.toHexString(d);
// Displaying hexaDec value
System.out.println("Hexadecimal value of " +d+ " is " + hexd);
}
}
输出:
Hexadecimal value of 986 is 3da
这是另一个程序来演示十六进制数字的用法。在这里,一个十进制数被转换为其对应的十六进制数,使用 toHexString 方法。
示例3
让我们看一个Java程序,使用库函数parseInt将一个十六进制数转换为其对应的十进制数。
// Java program to convert Hexadecimal numbers to corresponding Decimal number
import java.io.*;
public class HexToDecimal {
// Main method
public static void main(String[] args) {
// Random Hexadecimal number stored in a string
String hexd = "4B6A";
// Passing hexd and base 16 as parameters
// to parseInt method
int dec = Integer.parseInt(hexd, 16);
// Displaying the corresponding
// decimal value of a hexadecimal number
System.out.println("Corresponding Decimal value of" + hexd + " is " + dec);
}
}
输出
Corresponding Decimal value of4B6A is 19306
这个程序是为了演示十六进制数系统的工作原理而编写的。在这里,一个十六进制数被分配给一个变量,并使用一个库函数 integer.parseInt 将其转换为相应的十进制数。
示例4
让我们看一个Java程序,使用一个库函数 Long.toHexString 将一个十六进制数转换为相应的长整数。
// Java Program to demonstrate the Usage of HexaDecimal
import java.io.*;
public class LongToHex {
// Main method
public static void main(String[] args) {
// Long number to be converted
long l = 2028;
// Storing the result in a string hexd
String hexd = Long.toHexString(l);
// Displaying the corresponding hexadecimal value
System.out.println("Corresponding Hex value of long number " +l+ " is " + hexd);
}
}
输出
Corresponding Hex value of long number 2028 is 7ec
这个程序是为了演示十六进制数系统的工作原理而编写的。在这里,一个十六进制数被赋值给一个变量,并使用一个库函数将其转换为相应的长整数。 Long.toHexString
示例5
让我们看一个Java程序,使用库函数toHexString将一个长整数转换为相应的十六进制数。
// Java Program to Illustrate the Usage of HexaDecimal by converting a hexadecimal value into long value
import java.io.*;
public class HexToLong {
// Main method
public static void main(String[] args) {
// Hexadecimal number to be converted
String hs = "7850";
// passing hs and base 16 as parameters
// to parseLong function
long l = Long.parseLong(hs, 16);
// Displaying the corresponding hexadecimal value
System.out.println("Corresponding Long value of hexadecimal no. " +hs+ " is " + l);
}
}
输出
Corresponding Long value of hexadecimal no. 7850 is 30800
这个程序是为了展示十六进制数系统的工作原理而编写的。在这里,一个十六进制数被赋值给一个变量,并使用一个库函数 Long.parseLong 将其转换为对应的长整数。
本文阐述了在Java中使用十六进制的用法。我们演示了四种使用十六进制值的情况。我们看到了五种不同的实现方式,以理解其用法。