Java Float类floatToRawIntBits()方法与示例

Float类floatToRawIntBits()方法

  • floatToRawIntBits()方法在java.lang包中可用。

  • floatToRawIntBits()方法遵循IEEE 754单精度浮点标准,并且根据标准,它返回表示浮点值的位以及保留NaN值。

  • floatToRawIntBits()方法是一个静态方法,也可以使用类名进行访问,而且,如果尝试使用类对象访问该方法,那么也不会出错。

  • floatToRawIntBits()方法在表示位以及保留NaN(非数字)时不会引发异常。

语法:

    public static int floatToRawIntBits(float f);

参数:

  • float f –表示单精度浮点值。

返回值:

此方法的返回类型为float,它返回表示单个精度浮点值的位。

  • 如果我们传递“正无穷大”,它将返回值“ 0x7f800000”

  • 如果我们传递“负无穷大”,它将返回值“ 0xff800000”

  • 如果我们传递“ NaN”,它将返回实际的NaN值(即,它不会将编码NaN的所有位都折叠为“基本” NaN值)。

示例

//Java程序演示示例 
//floatToRawIntBits的值(f浮点数)
//float类的方法

public class FloatToRawIntBits {
    public static void main(String[] args) {
        //变量初始化
        float value1 = 18.20f;
        float value2 = 19.20f;

        //显示value1,value2值
        System.out.println("value1: " + value1);
        System.out.println("value2: " + value2);


        //它返回由单精度表示的位 
        //浮点参数 
        //Float.floatToRawIntBits(value1)
        int result1 = Float.floatToRawIntBits(value1);

        //它返回由单精度表示的位 
        //浮点参数 
        //Float.floatToRawIntBits(value2)
        int result2 = Float.floatToRawIntBits(value2);

        //显示结果1,结果2的值
        System.out.println("Float.floatToRawIntBits(value1): " + result1);
        System.out.println("Float.floatToRawIntBits(value2): " + result2);
        System.out.print("Float.floatToRawIntBits(NaN): ");
        System.out.println(Float.floatToRawIntBits(5.0f % 0f));
    }
}

输出结果

value1: 18.2
value2: 19.2
Float.floatToRawIntBits(value1): 1100061082
Float.floatToRawIntBits(value2): 1100585370
Float.floatToRawIntBits(NaN): 2143289344