我有二进制/八进制/十六进制格式的double值,并希望在彼此之间进行转换。我能用这样的整数值来做这个
Long l = Long.valueOf(value, FORMAT_FROM); //FORMAT_FROM -> 2 || 8 || 16
//and then
Long.toHexString(l) //or
Long.toBinaryString(l) //or
Long.toOctalString(l)
小数值11.13
应该是(用计算器检查):
13.102436561 //Octal
1011.001000011 //Binary
B.2147AE148 //Hex
有任何想法或暗示如何到达那里?
答案 0 :(得分:0)
Long
只是一个64位带符号整数,不接受小数值。除Double
之外做同样的事情:
Double d = Double.valueOf(value, FORMAT_FROM); //FORMAT_FROM -> 2 || 8 || 16
//and then
Double.toHexString(d) //or
可悲的是二进制和八进制不能直接使用。