Java 基礎類型 —— Float

1 Float 類方法

  • 返回類型標 * 的是重點方法

1.1 toString —— 將 float 轉爲 String

返回類型 方法名 描述
String toString() Float.toString(value)
* static String toString(float f) FloatingDecimal.toJavaFormatString(f)
* static String toHexString(float f) Double.toHexString(f)

1.2 parseFloat —— 將 String 轉爲 float

返回類型 方法名 描述
* static float parseFloat(String s) FloatingDecimal.parseFloat(s)

1.3 valueOf —— 將 String、float 轉爲 Float

返回類型 方法名 描述
static Float valueOf(String s) new Float(parseFloat(s))
static Float valueOf(float s) new Float(f)

1.4 hashcode/compare

返回類型 方法名 描述
int hashCode() Float.hashCode(value)
static int hashCode(float value) floatToIntBits(value)
int compareTo(Float anotherFloat) Float.compare(value, anotherFloat.value)
static int compare(float f1, float f2) 考慮了 -0.0 NaN 情況

1.5 sum/max/min

返回類型 方法名 描述
static float sum(float a, float b) a + b
static float max(float a, float b) Math.max(a, b)
static float min(float a, float b) Math.min(a, b)

1.6 floatToIntBits/floatToRawIntBits/intBitsToFloat

返回類型 方法名 描述
* static int floatToIntBits(float value) 基本等同於 floatToRawIntBits() 方法,區別在於這裏對於 NaN 作了檢測,如果結果爲 NaN, 直接返回 0x7fc00000
* static native int floatToRawIntBits(float value) float 浮點數轉換爲其 IEEE 754 標準二進制形式對應的 int
* static native float intBitsToFloat(int bits) native 方法,也是通過聯合體 union 來實現的。只要參數中的 int 值滿足 IEEE 754 對於 NaN 的標準,就可以產生值不爲 Float.NaNNaN 值了

1.7 isNaN/isFinite

返回類型 方法名 描述
static boolean isNaN(float v) v != v
static boolean isInfinite(float v) (v == POSITIVE_INFINITY) || (v == NEGATIVE_INFINITY)
static boolean isFinite(float f) Math.abs(f) <= FloatConsts.MAX_VALUE
boolean isNaN() isNaN(value)
boolean isInfinite() isInfinite(value)

1.8 構造函數 Float(String)

  • 內部調用 parseFloat(s)

參考

jdk1.8_171

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章