可以使用Scanner来接收用户输入的十六进制数,然后使用Integer.parseInt()方法将其转换为十进制数。如果输入不是一个有效的十六进制数,会抛出NumberFormatException异常。下面是一个示例代码:import java.util.Scanner;public class HexToDecimal { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请输入一个十六进制数: "); String hex = scanner.nextLine(); try { // 去除可能的0x前缀 if(hex.startsWith("0x") || hex.startsWith("0X")) { hex = hex.substring(2); } int decimal = Integer.parseInt(hex, 16); System.out.println("转换为十进制数为: " + decimal); } catch(NumberFormatException e) { System.out.println("输入错误"); } scanner.close(); }}
在这个示例中,我们首先使用Scanner读取用户输入的字符串,并判断是否有0x前缀。然后,我们调用Integer.parseInt()方法将十六进制字符串转换为十进制数。如果转换成功,则输出结果;如果出现NumberFormatException异常,则输出"输入错误"。
希望这个例子对你有帮助!
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |