W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
java.lang.Object
|---java.lang.Number
|---|---java.lang.Float
public final class Float
extends Number
implements Comparable<Float>
Float 類將原始類型 float 的值包裝在對(duì)象中。 Float 類型的對(duì)象包含一個(gè)類型為 float 的字段。
此外,該類提供了幾種將浮點(diǎn)數(shù)轉(zhuǎn)換為字符串和將字符串轉(zhuǎn)換為浮點(diǎn)數(shù)的方法,以及在處理浮點(diǎn)數(shù)時(shí)有用的其他常量和方法。
修飾符和類型 | 字段 | 描述 |
---|---|---|
static int | BYTES | 用于表示浮點(diǎn)值的字節(jié)數(shù)。 |
static int | MAX_EXPONENT | 有限浮點(diǎn)變量可能具有的最大指數(shù)。 |
static float | MAX_VALUE | 一個(gè)保持浮點(diǎn)類型的最大正有限值的常數(shù),(2-2-23)·2127。 |
static int | MIN_EXPONENT | 標(biāo)準(zhǔn)化浮點(diǎn)變量可能具有的最小指數(shù)。 |
static float | MIN_NORMAL | 一個(gè)常量,保持浮點(diǎn)類型的最小正正常值,2-126。 |
static float | MIN_VALUE | 一個(gè)保持浮點(diǎn)類型的最小正非零值的常量,2-149。 |
static float | NaN | 一個(gè)保持浮點(diǎn)類型的非數(shù)字 (NaN) 值的常量。 |
static float | NEGATIVE_INFINITY | 一個(gè)保持浮點(diǎn)類型負(fù)無(wú)窮大的常數(shù)。 |
static float | POSITIVE_INFINITY | 一個(gè)保持浮點(diǎn)型正無(wú)窮大的常數(shù)。 |
static int | SIZE | 用于表示浮點(diǎn)值的位數(shù)。 |
static ClassFloat | TYPE | 表示基本類型 float 的 Class 實(shí)例。 |
構(gòu)造函數(shù) | 描述 |
---|---|
Float(double value) | 構(gòu)造一個(gè)新分配的 Float 對(duì)象,該對(duì)象表示轉(zhuǎn)換為 float 類型的參數(shù)。 |
Float(float value) | 構(gòu)造一個(gè)新分配的 Float 對(duì)象,該對(duì)象表示原始浮點(diǎn)參數(shù)。 |
Float(String s) | 構(gòu)造一個(gè)新分配的 Float 對(duì)象,該對(duì)象表示由字符串表示的 float 類型的浮點(diǎn)值。 |
修飾符和類型 | 方法 | 描述 |
---|---|---|
byte | byteValue() | 在縮小原語(yǔ)轉(zhuǎn)換后,將此 Float 的值作為字節(jié)返回。 |
static int | compare(float f1, float f2) | 比較兩個(gè)指定的浮點(diǎn)值。 |
int | compareTo(Float anotherFloat) | 以數(shù)字方式比較兩個(gè) Float 對(duì)象。 |
double | doubleValue() | 在擴(kuò)大原始轉(zhuǎn)換后,將此浮點(diǎn)數(shù)的值作為雙精度值返回。 |
boolean | equals(Object obj) | 將此對(duì)象與指定對(duì)象進(jìn)行比較。 |
static int | floatToIntBits(float value) | 根據(jù) IEEE 754 浮點(diǎn)“單一格式”位布局返回指定浮點(diǎn)值的表示。 |
static int | floatToRawIntBits(float value) | 根據(jù) IEEE 754 浮點(diǎn)“單一格式”位布局返回指定浮點(diǎn)值的表示,保留非數(shù)字 (NaN) 值。 |
float | floatValue() | 返回此 Float 對(duì)象的浮點(diǎn)值。 |
int | hashCode() | 返回此 Float 對(duì)象的哈希碼。 |
static int | hashCode(float value) | 返回浮點(diǎn)值的哈希碼; 與 Float.hashCode() 兼容。 |
static float | intBitsToFloat(int bits) | 返回對(duì)應(yīng)于給定位表示的浮點(diǎn)值。 |
int | intValue() | 在縮小原始轉(zhuǎn)換后,將此 Float 的值作為 int 返回。 |
static boolean | isFinite(float f) | 如果參數(shù)是有限浮點(diǎn)值,則返回 true; 否則返回 false(對(duì)于 NaN 和無(wú)窮大參數(shù))。 |
boolean | isInfinite() | 如果此 Float 值的大小無(wú)限大,則返回 true,否則返回 false。 |
static boolean | isInfinite(float v) | 如果指定的數(shù)字在數(shù)量級(jí)上無(wú)限大,則返回 true,否則返回 false。 |
boolean | isNaN() | 如果此浮點(diǎn)值是非數(shù)字 (NaN),則返回 true,否則返回 false。 |
static boolean | isNaN(float v) | 如果指定的數(shù)字是非數(shù)字 (NaN) 值,則返回 true,否則返回 false。 |
long | longValue() | 在縮小原始轉(zhuǎn)換后將此浮點(diǎn)數(shù)的值作為 long 返回。 |
static float | max(float a, float b) | 返回兩個(gè)浮點(diǎn)值中的較大者,就像調(diào)用 Math#max(float, float) 一樣。 |
static float | min(float a, float b) | 返回兩個(gè)浮點(diǎn)值中較小的一個(gè),就像調(diào)用 Math#min(float, float) 一樣。 |
static float | parseFloat(String s) | 返回一個(gè)新的浮點(diǎn)數(shù),初始化為指定字符串表示的值,由 Float 類的 valueOf 方法執(zhí)行。 |
short | shortValue() | 在縮小原始轉(zhuǎn)換后,將此浮點(diǎn)數(shù)的值作為一個(gè)短整數(shù)返回。 |
static float | sum(float a, float b) | 根據(jù) + 運(yùn)算符將兩個(gè)浮點(diǎn)值相加。 |
static String | toHexString(float f) | 返回浮點(diǎn)參數(shù)的十六進(jìn)制字符串表示。 |
String | toString() | 返回此 Float 對(duì)象的字符串表示形式。 |
static String | toString(float f) | 返回 float 參數(shù)的字符串表示形式。 |
static Float | valueOf(float f) | 返回表示指定浮點(diǎn)值的 Float 實(shí)例。 |
static Float | valueOf(String s) | 返回一個(gè) Float 對(duì)象,該對(duì)象包含由參數(shù)字符串 s 表示的浮點(diǎn)值。 |
從類 java.lang.Object 繼承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
public static final int BYTES
用于表示浮點(diǎn)值的字節(jié)數(shù)。
public static final int MAX_EXPONENT
有限浮點(diǎn)變量可能具有的最大指數(shù)。 它等于 Math.getExponent(Float.MAX_VALUE) 返回的值。
public static final float MAX_VALUE
一個(gè)保持浮點(diǎn)類型的最大正有限值的常數(shù),(2-2-23)·2127。 它等于十六進(jìn)制浮點(diǎn)文字 0x1.fffffeP+127f,也等于 Float.intBitsToFloat(0x7f7fffff)。
public static final int MIN_EXPONENT
標(biāo)準(zhǔn)化浮點(diǎn)變量可能具有的最小指數(shù)。 它等于 Math.getExponent(Float.MIN_NORMAL) 返回的值。
public static final float MIN_NORMAL
一個(gè)常量,保持浮點(diǎn)類型的最小正正常值,2-126。 它等于十六進(jìn)制浮點(diǎn)文字 0x1.0p-126f,也等于 Float.intBitsToFloat(0x00800000)。
public static final float MIN_VALUE
一個(gè)保持浮點(diǎn)類型的最小正非零值的常量,2-149。 它等于十六進(jìn)制浮點(diǎn)文字 0x0.000002P-126f,也等于 Float.intBitsToFloat(0x1)。
public static final float NEGATIVE_INFINITY
一個(gè)保持浮點(diǎn)類型負(fù)無(wú)窮大的常數(shù)。 它等于 Float.intBitsToFloat(0xff800000) 返回的值。
public static final float NaN
一個(gè)保持浮點(diǎn)類型的非數(shù)字 (NaN) 值的常量。 它相當(dāng)于 Float.intBitsToFloat(0x7fc00000) 返回的值。
public static final float POSITIVE_INFINITY
一個(gè)保持浮點(diǎn)型正無(wú)窮大的常數(shù)。 它等于 Float.intBitsToFloat(0x7f800000) 返回的值。
public static final int SIZE
用于表示浮點(diǎn)值的位數(shù)。
public static final ClassFloat TYPE
表示基本類型 float 的 Class 實(shí)例。
public Float(float value)
構(gòu)造一個(gè)新分配的 Float 對(duì)象,該對(duì)象表示原始浮點(diǎn)參數(shù)。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
value | 浮點(diǎn)數(shù)表示的值。 |
public Float(double value)
構(gòu)造一個(gè)新分配的 Float 對(duì)象,該對(duì)象表示轉(zhuǎn)換為 float 類型的參數(shù)。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
value | 浮點(diǎn)數(shù)表示的值。 |
public Float(String s) throws NumberFormatException
構(gòu)造一個(gè)新分配的 Float 對(duì)象,該對(duì)象表示由字符串表示的 float 類型的浮點(diǎn)值。 字符串被轉(zhuǎn)換為浮點(diǎn)值,就像通過(guò) valueOf 方法一樣。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
s | 要轉(zhuǎn)換為浮點(diǎn)數(shù)的字符串。 |
Throws:
Throw名稱 | Throw描述 |
---|---|
NumberFormatException | 如果字符串不包含可解析的數(shù)字。 |
public static String toString(float f)
返回 float 參數(shù)的字符串表示形式。 下面提到的所有字符都是 ASCII 字符。
m:
m 或 a 的小數(shù)部分必須打印多少位? 必須至少有一個(gè)數(shù)字來(lái)表示小數(shù)部分,除此之外,必須有盡可能多的數(shù)字,但僅能將參數(shù)值與浮點(diǎn)類型的相鄰值唯一區(qū)分開(kāi)來(lái)。 也就是說(shuō),假設(shè) x 是由該方法為有限非零參數(shù) f 生成的十進(jìn)制表示所表示的精確數(shù)學(xué)值。 那么 f 必須是最接近 x 的浮點(diǎn)值; 或者,如果兩個(gè)浮點(diǎn)值同樣接近 x,則 f 必須是其中之一,并且 f 的有效位的最低有效位必須為 0。
要?jiǎng)?chuàng)建浮點(diǎn)值的本地化字符串表示,請(qǐng)使用 NumberFormat 的子類。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
f | 要轉(zhuǎn)換的浮點(diǎn)數(shù)。 |
返回:
參數(shù)的字符串表示。
public static String toHexString(float f)
返回浮點(diǎn)參數(shù)的十六進(jìn)制字符串表示。 下面提到的所有字符都是 ASCII 字符。
m:
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
f | 要轉(zhuǎn)換的浮點(diǎn)數(shù)。 |
返回:
參數(shù)的十六進(jìn)制字符串表示。
public static Float valueOf(String s) throws NumberFormatException
返回一個(gè) Float 對(duì)象,該對(duì)象包含由參數(shù)字符串 s 表示的浮點(diǎn)值。
如果 s 為 null,則拋出 NullPointerException。
s 中的前導(dǎo)和尾隨空白字符被忽略。就像使用 String#trim 方法一樣刪除空格;也就是說(shuō),ASCII 空格和控制字符都被刪除了。 s 的其余部分應(yīng)構(gòu)成一個(gè) FloatValue,如詞法語(yǔ)法規(guī)則所述:
浮點(diǎn)值:
簽署 NaN
Signopt Infinity
Signopt FloatingPointLiteral
Signopt HexFloatingPointLiteral
有符號(hào)整數(shù)
HexFloatingPointLiteral:
HexSignificand BinaryExponent FloatTypeSuffixopt
十六進(jìn)制符號(hào):
十六進(jìn)制數(shù)
十六進(jìn)制數(shù)。
0x 十六進(jìn)制數(shù)字選擇。十六進(jìn)制數(shù)
0X 十六進(jìn)制數(shù)字選擇。十六進(jìn)制數(shù)
二進(jìn)制指數(shù):
BinaryExponentIndicator 有符號(hào)整數(shù)
BinaryExponentIndicator:
p
其中 Sign、FloatingPointLiteral、HexNumeral、HexDigits、SignedInteger 和 FloatTypeSuffix 與《Java? 語(yǔ)言規(guī)范》的詞法結(jié)構(gòu)部分中的定義相同,但數(shù)字之間不接受下劃線。如果 s 不具有 FloatValue 的形式,則拋出 NumberFormatException。否則,s 被視為代表通常的“計(jì)算機(jī)科學(xué)記數(shù)法”中的精確十進(jìn)制值或精確的十六進(jìn)制值;然后,這個(gè)精確的數(shù)值在概念上被轉(zhuǎn)換為“無(wú)限精確”的二進(jìn)制值,然后通過(guò) IEEE 754 浮點(diǎn)算術(shù)的通常舍入到最近的規(guī)則將其舍入為 float 類型,其中包括保留零值的符號(hào)。請(qǐng)注意,四舍五入規(guī)則也意味著溢出和下溢行為;如果 s 的精確值在量級(jí)上足夠大(大于或等于 (MAX_VALUE + Math#ulp(float)/2),則四舍五入到浮點(diǎn)數(shù)將導(dǎo)致無(wú)窮大,并且如果 s 的精確值在量級(jí)上足夠?。ㄐ∮诨虻扔贛IN_VALUE/2),四舍五入到float會(huì)產(chǎn)生0,最后,四舍五入后返回一個(gè)代表這個(gè)float值的Float對(duì)象。
要解釋浮點(diǎn)值的本地化字符串表示,請(qǐng)使用 NumberFormat 的子類。
請(qǐng)注意,尾隨格式說(shuō)明符、確定浮點(diǎn)文字類型的說(shuō)明符(1.0f 是浮點(diǎn)值;1.0d 是雙精度值)不會(huì)影響此方法的結(jié)果。也就是說(shuō),輸入字符串的數(shù)值直接轉(zhuǎn)換為目標(biāo)浮點(diǎn)類型。一般來(lái)說(shuō),兩步轉(zhuǎn)換序列,字符串到雙精度,然后是雙精度到浮點(diǎn)數(shù),并不等同于將字符串直接轉(zhuǎn)換為浮點(diǎn)數(shù)。例如,如果先轉(zhuǎn)換為中間雙精度然后再轉(zhuǎn)換為浮點(diǎn)數(shù),則字符串“1.00000017881393421514957253748434595763683319091796875001d”會(huì)導(dǎo)致浮點(diǎn)值 1.0000002f;如果字符串直接轉(zhuǎn)換為浮點(diǎn)數(shù),則結(jié)果為 1.0000001f。
為避免在無(wú)效字符串上調(diào)用此方法并引發(fā) NumberFormatException,Double#valueOf 的文檔列出了可用于篩選輸入的正則表達(dá)式。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
s | 要解析的字符串。 |
返回:
一個(gè) Float 對(duì)象,保存由 String 參數(shù)表示的值。
Throws:
Throw名稱 | Throw描述 |
---|---|
NumberFormatException | 如果字符串不包含可解析的數(shù)字。 |
public static Float valueOf(float f)
返回表示指定浮點(diǎn)值的 Float 實(shí)例。 如果不需要新的 Float 實(shí)例,則通常應(yīng)優(yōu)先使用此方法而不是構(gòu)造函數(shù) Float(float),因?yàn)榇朔椒赡軙?huì)通過(guò)緩存頻繁請(qǐng)求的值來(lái)顯著提高空間和時(shí)間性能。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
f | 一個(gè)浮點(diǎn)值。 |
返回:
代表 f 的 Float 實(shí)例。
public static float parseFloat(String s) throws NumberFormatException
返回一個(gè)新的浮點(diǎn)數(shù),初始化為指定字符串表示的值,由 Float 類的 valueOf 方法執(zhí)行。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
s | 要解析的字符串。 |
返回:
由字符串參數(shù)表示的浮點(diǎn)值。
Throws:
Throw名稱 | Throw描述 |
---|---|
NullPointerException | 如果字符串為空 |
NumberFormatException | 如果字符串不包含可解析的浮點(diǎn)數(shù)。 |
public static boolean isNaN(float v)
如果指定的數(shù)字是非數(shù)字 (NaN) 值,則返回 true,否則返回 false。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
v | 要測(cè)試的值。 |
返回:
如果參數(shù)為 NaN,則為 true; 否則為假。
public static boolean isInfinite(float v)
如果指定的數(shù)字在數(shù)量級(jí)上無(wú)限大,則返回 true,否則返回 false。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
v | 要測(cè)試的值。 |
返回:
如果參數(shù)是正無(wú)窮大或負(fù)無(wú)窮大,則為真; 否則為假。
public static boolean isFinite(float f)
如果參數(shù)是有限浮點(diǎn)值,則返回 true; 否則返回 false(對(duì)于 NaN 和無(wú)窮大參數(shù))。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
f | 要測(cè)試的浮點(diǎn)值 |
返回:
如果參數(shù)是有限浮點(diǎn)值,則為 true,否則為 false。
public boolean isNaN()
如果此浮點(diǎn)值是非數(shù)字 (NaN),則返回 true,否則返回 false。
返回:
如果此對(duì)象表示的值為 NaN,則為 true; 否則為假。
public boolean isInfinite()
如果此 Float 值的大小無(wú)限大,則返回 true,否則返回 false。
返回:
如果此對(duì)象表示的值是正無(wú)窮大或負(fù)無(wú)窮大,則為真; 否則為假。
public String toString()
返回此 Float 對(duì)象的字符串表示形式。 由該對(duì)象表示的原始浮點(diǎn)值完全轉(zhuǎn)換為字符串,就好像通過(guò)一個(gè)參數(shù)的 toString 方法一樣。
覆蓋:
類 Object 中的 toString
返回:
此對(duì)象的字符串表示形式。
public byte byteValue()
在縮小原語(yǔ)轉(zhuǎn)換后,將此 Float 的值作為字節(jié)返回。
覆蓋:
類 Number 中的 byteValue
返回:
此對(duì)象表示的浮點(diǎn)值轉(zhuǎn)換為字節(jié)類型
public short shortValue()
在縮小原始轉(zhuǎn)換后,將此浮點(diǎn)數(shù)的值作為一個(gè)短整數(shù)返回。
覆蓋:
類 Number 中的 shortValue
返回:
此對(duì)象表示的浮點(diǎn)值轉(zhuǎn)換為 short 類型
public int intValue()
在縮小原始轉(zhuǎn)換后,將此 Float 的值作為 int 返回。
指定者:
類 Number 中的 intValue
返回:
此對(duì)象表示的浮點(diǎn)值轉(zhuǎn)換為 int 類型
public long longValue()
在縮小原始轉(zhuǎn)換后將此浮點(diǎn)數(shù)的值作為 long 返回。
指定者:
類 Number 中的 longValue
返回:
此對(duì)象表示的浮點(diǎn)值轉(zhuǎn)換為 long 類型
public float floatValue()
返回此 Float 對(duì)象的浮點(diǎn)值。
指定者:
類 Number 中的 floatValue
返回:
此對(duì)象表示的浮點(diǎn)值
public double doubleValue()
在擴(kuò)大原始轉(zhuǎn)換后,將此浮點(diǎn)數(shù)的值作為雙精度值返回。
指定者:
類 Number 中的 doubleValue
返回:
此對(duì)象表示的浮點(diǎn)值轉(zhuǎn)換為 double 類型
public int hashCode()
返回此 Float 對(duì)象的哈希碼。 結(jié)果是此 Float 對(duì)象表示的原始浮點(diǎn)值的整數(shù)位表示,完全由方法 floatToIntBits(float) 生成。
覆蓋:
類 Object 中的 hashCode
返回:
此對(duì)象的哈希碼值。
public static int hashCode(float value)
返回浮點(diǎn)值的哈希碼; 與 Float.hashCode() 兼容。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
value | 哈希值 |
返回:
浮點(diǎn)值的哈希碼值。
public boolean equals(Object obj)
將此對(duì)象與指定對(duì)象進(jìn)行比較。 當(dāng)且僅當(dāng)參數(shù)不為 null 并且是表示浮點(diǎn)數(shù)的 Float 對(duì)象時(shí),結(jié)果才為真,該浮點(diǎn)數(shù)與該對(duì)象表示的浮點(diǎn)數(shù)具有相同的值。 為此,當(dāng)且僅當(dāng)方法 floatToIntBits(float) 在應(yīng)用于每個(gè)浮點(diǎn)值時(shí)返回相同的 int 值時(shí),才認(rèn)為兩個(gè)浮點(diǎn)值相同。
請(qǐng)注意,在大多數(shù)情況下,對(duì)于 Float 類的兩個(gè)實(shí)例 f1 和 f2,f1.equals(f2) 的值當(dāng)且僅當(dāng)
f1.floatValue() == f2.floatValue()
也有值 true。 但是,有兩個(gè)例外:
此定義允許哈希表正常運(yùn)行。
覆蓋:
類 Object 中的等于
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
obj | 要比較的對(duì)象 |
返回:
如果對(duì)象相同,則為 true; 否則為假。
public static int floatToIntBits(float value)
根據(jù) IEEE 754 浮點(diǎn)“單一格式”位布局返回指定浮點(diǎn)值的表示。
第 31 位(掩碼 0x80000000 選擇的位)表示浮點(diǎn)數(shù)的符號(hào)。 位 30-23(由掩碼 0x7f800000 選擇的位)表示指數(shù)。 位 22-0(由掩碼 0x007fffff 選擇的位)表示浮點(diǎn)數(shù)的有效位(有時(shí)稱為尾數(shù))。
如果參數(shù)為正無(wú)窮大,則結(jié)果為 0x7f800000。
如果參數(shù)為負(fù)無(wú)窮大,則結(jié)果為 0xff800000。
如果參數(shù)為 NaN,則結(jié)果為 0x7fc00000。
在所有情況下,結(jié)果都是一個(gè)整數(shù),當(dāng)將其提供給 intBitsToFloat(int) 方法時(shí),將產(chǎn)生一個(gè)與 floatToIntBits 的參數(shù)相同的浮點(diǎn)值(除了所有 NaN 值都折疊為單個(gè)“規(guī)范”NaN 值 )。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
value | 一個(gè)浮點(diǎn)數(shù)。 |
返回:
表示浮點(diǎn)數(shù)的位。
public static int floatToRawIntBits(float value)
根據(jù) IEEE 754 浮點(diǎn)“單一格式”位布局返回指定浮點(diǎn)值的表示,保留非數(shù)字 (NaN) 值。
第 31 位(掩碼 0x80000000 選擇的位)表示浮點(diǎn)數(shù)的符號(hào)。位 30-23(由掩碼 0x7f800000 選擇的位)表示指數(shù)。位 22-0(由掩碼 0x007fffff 選擇的位)表示浮點(diǎn)數(shù)的有效位(有時(shí)稱為尾數(shù))。
如果參數(shù)為正無(wú)窮大,則結(jié)果為 0x7f800000。
如果參數(shù)為負(fù)無(wú)窮大,則結(jié)果為 0xff800000。
如果參數(shù)是 NaN,則結(jié)果是表示實(shí)際 NaN 值的整數(shù)。與 floatToIntBits 方法不同,floatToRawIntBits 不會(huì)將所有編碼 NaN 的位模式折疊為單個(gè)“規(guī)范”NaN 值。
在所有情況下,結(jié)果都是一個(gè)整數(shù),當(dāng)給 intBitsToFloat(int) 方法時(shí),將產(chǎn)生一個(gè)與 floatToRawIntBits 的參數(shù)相同的浮點(diǎn)值。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
value | 一個(gè)浮點(diǎn)數(shù)。 |
返回:
表示浮點(diǎn)數(shù)的位。
public static float intBitsToFloat(int bits)
返回對(duì)應(yīng)于給定位表示的浮點(diǎn)值。 根據(jù) IEEE 754 浮點(diǎn)“單一格式”位布局,該參數(shù)被認(rèn)為是浮點(diǎn)值的表示。
如果參數(shù)為 0x7f800000,則結(jié)果為正無(wú)窮大。
如果參數(shù)為 0xff800000,則結(jié)果為負(fù)無(wú)窮大。
如果參數(shù)是 0x7f800001 到 0x7fffffff 范圍內(nèi)或 0xff800001 到 0xffffffff 范圍內(nèi)的任何值,則結(jié)果為 NaN。 Java 提供的任何 IEEE 754 浮點(diǎn)運(yùn)算都無(wú)法區(qū)分具有不同位模式的相同類型的兩個(gè) NaN 值。 NaN 的不同值只能通過(guò)使用 Float.floatToRawIntBits 方法來(lái)區(qū)分。
在所有其他情況下,讓 s、e 和 m 是可以從參數(shù)計(jì)算的三個(gè)值:
int s = ((bits >> 31) == 0) ? 1 : -1; int e = ((bits >> 23) & 0xff); int m = (e == 0) ? (bits & 0x7fffff) << 1 : (bits & 0x7fffff) | 0x800000;
那么浮點(diǎn)結(jié)果等于數(shù)學(xué)表達(dá)式s·m·2e-150的值。
請(qǐng)注意,此方法可能無(wú)法返回與 int 參數(shù)具有完全相同位模式的浮點(diǎn) NaN。 IEEE 754 區(qū)分了兩種 NaN,靜默 NaN 和信令 NaN。這兩種 NaN 之間的差異在 Java 中通常是不可見(jiàn)的。信號(hào) NaN 的算術(shù)運(yùn)算將它們變成安靜的 NaN,具有不同但通常相似的位模式。但是,在某些處理器上,僅復(fù)制信號(hào) NaN 也會(huì)執(zhí)行該轉(zhuǎn)換。特別是,復(fù)制一個(gè)信令 NaN 以將其返回給調(diào)用方法可以執(zhí)行此轉(zhuǎn)換。因此 intBitsToFloat 可能無(wú)法返回帶有信號(hào) NaN 位模式的浮點(diǎn)數(shù)。因此,對(duì)于某些 int 值,floatToRawIntBits(intBitsToFloat(start)) 可能不等于 start。此外,哪些特定的位模式代表信令 NaN 取決于平臺(tái);盡管所有 NaN 位模式,安靜或信令,都必須在上面確定的 NaN 范圍內(nèi)。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
bits | 一個(gè)整數(shù)。 |
返回:
具有相同位模式的浮點(diǎn)值。
public int compareTo(Float anotherFloat)
以數(shù)字方式比較兩個(gè) Float 對(duì)象。 當(dāng)應(yīng)用于原始浮點(diǎn)值時(shí),此方法執(zhí)行的比較與 Java 語(yǔ)言數(shù)值比較運(yùn)算符(<、<=、==、>=、>)執(zhí)行的比較有兩種不同之處:
這確保了此方法強(qiáng)加的 Float 對(duì)象的自然順序與 equals 一致。
指定者:
接口 ComparableFloat 中的 compareTo
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
anotherFloat | 要比較的浮點(diǎn)數(shù)。 |
返回:
如果 anotherFloat 在數(shù)值上等于此 Float,則值為 0; 如果此 Float 在數(shù)值上小于 anotherFloat,則值小于 0; 如果此浮點(diǎn)數(shù)在數(shù)值上大于另一個(gè)浮點(diǎn)數(shù),則值大于 0。
public static int compare(float f1, float f2)
比較兩個(gè)指定的浮點(diǎn)值。 返回的整數(shù)值的符號(hào)與調(diào)用將返回的整數(shù)的符號(hào)相同:
new Float(f1).compareTo(new Float(f2))
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
f1 | 要比較的第一個(gè)浮點(diǎn)數(shù)。 |
f2 | 要比較的第二個(gè)浮點(diǎn)數(shù) |
返回:
如果 f1 在數(shù)值上等于 f2,則值為 0; 如果 f1 在數(shù)值上小于 f2,則值小于 0; 如果 f1 在數(shù)值上大于 f2,則值大于 0。
public static float sum(float a, float b)
根據(jù) + 運(yùn)算符將兩個(gè)浮點(diǎn)值相加。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
a | 第一個(gè)操作數(shù) |
b | 第二個(gè)操作數(shù) |
返回:
a 和 b 之和
public static float max(float a, float b)
返回兩個(gè)浮點(diǎn)值中的較大者,就像調(diào)用 Math#max(float, float) 一樣。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
a | 第一個(gè)操作數(shù) |
b | 第二個(gè)操作數(shù) |
返回:
a 和 b 中的較大者
public static float min(float a, float b)
返回兩個(gè)浮點(diǎn)值中較小的一個(gè),就像調(diào)用 Math#min(float, float) 一樣。
參數(shù):
參數(shù)名稱 | 參數(shù)描述 |
---|---|
a | 第一個(gè)操作數(shù) |
b | 第二個(gè)操作數(shù) |
返回:
a 和 b 中較小的一個(gè)
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: