日期:2014-05-20  浏览次数:20782 次

十进制的数转换为十六进制
什么函数或是方法可以将十进制的数转换为十六进制?

------解决方案--------------------
System.out.println(Integer.toHexString(255));
------解决方案--------------------
Double.toHexString()
public static String toHexString(double d)返回 double 参数的十六进制字符串表示形式。下面提到的所有字符都是 ASCII 字符。
如果参数为 NaN,那么结果为字符串 "NaN "。
否则,结果是表示参数符号和数值的字符串。如果符号为负,那么结果的第一个字符是 '- ' ( '\u002D ');如果符号为正,那么结果中不显示符号字符。对于数值 m:
如果 m 为无穷大,则用字符串 "Infinity " 表示;因此,正无穷大生成结果 "Infinity ",负无穷大生成结果 "-Infinity "。
如果 m 为 0,则用字符串 "0x0.0p0 " 表示;因此,负 0 生成结果 "-0x0.0p0 ",正 0 生成结果 "0x0.0p0 "。
如果 m 是具有标准化表示形式的 double 值,则使用子字符串表示有效数字和指数字段。有效数字用字符 "0x1. " 表示,后跟该有效数字剩余小数部分的小写十六进制表示形式。除非所有位数都为 0,否则移除十六进制表示中的尾部 0,在所有位数都为零的情况下,可以用一个 0 表示。接下来用 "p " 表示指数,后跟无偏指数的十进制字符串,该值与通过对指数值调用 Integer.toString 生成的值相同。
如果 m 是非标准表示形式的 double 值,则用字符 "0x0. " 表示有效数字,后跟该有效数字剩余小数部分的十六进制表示形式。移除十六进制表示中的尾部 0。然后用 "p-1022 " 表示指数。注意,在非标准有效数字中,必须至少有一个非 0 数字。
示例 浮点值 十六进制字符串
1.0 0x1.0p0
-1.0 -0x1.0p0
2.0 0x1.0p1
3.0 0x1.8p1
0.5 0x1.0p-1
0.25 0x1.0p-2
Double.MAX_VALUE 0x1.fffffffffffffp1023
Minimum Normal Value 0x1.0p-1022
Maximum Subnormal Value 0x0.fffffffffffffp-1022
Double.MIN_VALUE 0x0.0000000000001p-1022


参数:
d - 要转换的 double 值。
返回:
参数的十六进制字符串表示形式。
从以下版本开始:
1.5