java转换二进制/ ocal / hex双值

时间:2013-09-12 19:24:51

标签: java binary hex octal

我有二进制/八进制/十六进制格式的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

有任何想法或暗示如何到达那里?

1 个答案:

答案 0 :(得分:0)

Long只是一个64位带符号整数,不接受小数值。除Double之外做同样的事情:

  Double d = Double.valueOf(value, FORMAT_FROM); //FORMAT_FROM -> 2 || 8 || 16
  //and then 
  Double.toHexString(d) //or

可悲的是二进制和八进制不能直接使用。