IEEE754标准实数转化类(转)

来源:互联网 发布:沙龙 陈奕迅 知乎 编辑:程序博客网 时间:2024/06/05 22:31

由于工作原因,查询了好多,现在借鉴人家的代码,贴到这了,以备后用。

public class IEEE {

    /**
     * IEEE754标准的单精度实数转化为16进制表示
     * @param a
     * @return String
     */
    public String FloatToHex(float a){
         int c=Float.floatToIntBits(a);
         return Integer.toHexString(c);
     }
 
    /**
     * IEEE754标准的双精度实数转化为16进制表示
     * @param a
     * @return String
     */
    public String DoubleToHex(double a){
 
         long c=Double.doubleToLongBits(a);
         return Long.toHexString(c);
     }
     /**
      * 从16进制表示转化为IEEE754标准的双精度实数
      * @param a
      * @return double
      */
     public double HexToDouble(long a){
         double b=Double.longBitsToDouble(a);
         return b;
     }
     /**
      * 从16进制表示转化为IEEE754标准的单精度实数
      * @param a
      * @return float
      */
     public float HexToFloat(int a){
         float  b=Float.intBitsToFloat(a);
         return b;
     }
}


转自:

http://www.zerob13.in/2010/03/14/ieee754%E6%A0%87%E5%87%86%E5%AE%9E%E6%95%B0%E8%BD%AC%E5%8C%96%E7%B1%BB%EF%BC%88%E6%96%B9%E4%BE%BF%E5%81%9A%E7%BB%84%E6%88%90%E5%8E%9F%E7%90%86%E4%BD%9C%E4%B8%9A%EF%BC%89/