输入一个16进制字符串s(不超过8位)将s转换成八进制数并输出JAVA语言
时间: 2024-03-22 18:41:04 浏览: 45
十六进制转十进制。java
好的,以下是Java语言的代码实现:
```java
import java.util.Scanner;
public class HexToOctal {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个16进制字符串: ");
String s = sc.nextLine();
int num = Integer.parseInt(s, 16);
String octNum = Integer.toOctalString(num);
System.out.println("转换成八进制数为: " + octNum);
}
}
```
解释一下代码:
- 首先,使用 `Scanner` 类获取用户输入的16进制字符串,并赋值给字符串变量 `s`。
- 然后,使用 `Integer.parseInt()` 方法将16进制字符串转换成10进制数,并赋值给整型变量 `num`。
- 接着,使用 `Integer.toOctalString()` 方法将10进制数转换成8进制数,并赋值给字符串变量 `octNum`。
- 最后,使用 `System.out.println()` 方法输出转换后的八进制数。
如果用户输入的16进制字符串为 `1a2b3c`,则输出结果为:
```
请输入一个16进制字符串: 1a2b3c
转换成八进制数为: 52726714
```
阅读全文