java 32进制10进制互转 工具类
时间: 2024-01-23 09:00:23 浏览: 203
32位(二进制-十六进制-十进制)转换工具
4星 · 用户满意度95%
Java中可以编写一个工具类来实现32进制和10进制的相互转换。
以下是一个简单的实现示例:
```java
public class NumberConverter {
private static final String CHARACTERS = "0123456789ABCDEFGHIJKLMNOPQRSTUV";
public static String decimalTo32(int decimalNum) {
StringBuilder result = new StringBuilder();
while (decimalNum > 0) {
int remainder = decimalNum % 32;
result.insert(0, CHARACTERS.charAt(remainder));
decimalNum /= 32;
}
return result.toString();
}
public static int base32ToDecimal(String base32Num) {
int result = 0;
int power = 0;
for (int i = base32Num.length() - 1; i >= 0; i--) {
int digit = CHARACTERS.indexOf(base32Num.charAt(i));
result += digit * Math.pow(32, power);
power++;
}
return result;
}
public static void main(String[] args) {
int decimalNum = 123456;
String base32Num = decimalTo32(decimalNum);
int convertedDecimalNum = base32ToDecimal(base32Num);
System.out.println("Decimal to 32 base: " + base32Num);
System.out.println("32 base to Decimal: " + convertedDecimalNum);
}
}
```
该工具类使用静态方法`decimalTo32`将10进制数转换为32进制数,使用静态方法`base32ToDecimal`将32进制数转换为10进制数。在`main`方法中,我们可以看到一个示例的转换过程。我们将十进制数123456转换为32进制数,然后再将该32进制数转换回十进制数。
阅读全文