java 低位在前,高位在后 的16进制数据 1D00 ,如何转10进制,详细代码
时间: 2024-03-16 19:42:37 浏览: 127
Java代码如下:
```java
String hexString = "1D00";
byte[] bytes = new byte[2];
// 将16进制字符串转化为字节数组
for (int i = 0; i < hexString.length(); i += 2) {
bytes[i/2] = (byte) ((Character.digit(hexString.charAt(i), 16) << 4)
+ Character.digit(hexString.charAt(i+1), 16));
}
// 将字节数组转化为10进制数
int decimal = ((bytes[1] & 0xFF) << 8) | (bytes[0] & 0xFF);
System.out.println(decimal);
```
这段代码首先将 16 进制字符串 `"1D00"` 转化为一个长度为 2 的字节数组 `bytes`。然后,再将这个字节数组转化为一个 10 进制数 `decimal`。注意,这里使用了位运算符 `&` 和 `|` 来操作字节和位,确保了低位在前、高位在后的字节顺序。最后,程序输出转化后的 10 进制数 `464`。
相关问题
java 低位在前,高位在后 的16进制 1D00 ,转10进制代码
Java代码如下:
```java
String hexString = "1D00";
int decimal = 0;
for (int i = 0; i < hexString.length(); i++) {
char c = hexString.charAt(i);
int digit = Character.digit(c, 16);
decimal += digit * Math.pow(16, i);
}
System.out.println(decimal);
```
输出结果为:
```
464
```
java 低位在前,高位在后 的16进制 1D00,调转后转10进制代码
以下是Java代码示例:
```java
String hexStr = "1D00";
// 将低位在前,高位在后的16进制数反转
String reversedHexStr = new StringBuilder(hexStr).reverse().toString();
// 将反转后的16进制数转换为十进制数
int decimal = Integer.parseInt(reversedHexStr, 16);
System.out.println(decimal);
```
输出结果为:
```
29
```
阅读全文