赞
踩
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
提示:这里可以添加本文要记录的大概内容:
提示:以下是本篇文章正文内容,下面案例可供参考
话不多说,直接上代码
如将十进制数字 108 转换为十六进制
代码示例如下:
public static void main(String [] args) {
Scanner input = new Scanner(System.in);
while(input.hasNextInt()){
Integer a = input.nextInt();
System.out.println("数字"+a+"的十六进制为:"+a.toHexString(a));
}
}
运行结果:
108
数字:108的十六进制为:6c
666
数字:666的十六进制为:29a
这样将一个十进制数字转换为无符号的十六进制便完成了,若要显示“0x”符号,可在结果进行拼接,代码示例如下
public static void main(String [] args) {
Scanner input = new Scanner(System.in);
while(input.hasNextInt()){
Integer a = input.nextInt();
System.out.println("数字"+a+"的十六进制为:"+"0x"+a.toHexString(a));
}
}
注意:这里在使用toHexString()函数将十进制转换为十进制时,接受的输入参数a为Integer类型,倘若用int类型接收,则无法使用方法toHexString()
代码示例如下:
public static void main (String [] args){
Scanner input = new Scanner(System.in);
while (input.hasNextLine()){
String str = input.nextLine();
if(str.substring(0,2).equals("0x")){
System.out.println("有符号十六进制数:"+str+"转为十进制的值为:"+Integer.parseInt(str.substring(2),16));
}else {
System.out.println("无符号十六进制数:"+str+"转为十进制的值为:"+Integer.parseInt(str,16));
}
}
}
运行结果:
29a
无符号十六进制数:29a转为十进制的值为:666
0x6c
有符号十六进制数:0x6c转为十进制的值为:108
以上就是Java中十六进制和十进制之间相互转换的一个一个方法,十进制转十六进制的时候,用的函数为toHexString(待转换的十进制数字),十六进制转十进制的时候用的函数为parseInt(待转换的字符串,进制表示),
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。