Float类是基本类型Float的包装类,它包含几个方法来有效地处理Float值,比如将其转换为字符串表示,反之亦然。Float类的对象可以保存一个Float值。主要有两个构造函数来初始化Float对象-
- 浮动(浮动b: 创建一个用提供的值初始化的浮点对象。
Syntax: public Float(Float d)Parameters:d : value with which to initialize
- 浮动(字符串s): 创建一个用字符串表示法提供的已解析浮点值初始化的浮点对象。默认基数为10。
Syntax: public Float(String s) throws NumberFormatExceptionParameters: s : string representation of the byte value Throws: NumberFormatException: If the string provided does not represent any float value.
方法:
1.toString(): 返回与浮点值对应的字符串。
Syntax : public String toString(float b)Parameters :b : float value for which string representation required.
2.valueOf(): 返回用提供的值初始化的浮点对象。
Syntax : public static Float valueOf(float b)Parameters :b : a float value
另一个重载函数valueOf(String val),提供与 新浮点(Float.parseFloat(val,10))
Syntax : public static Float valueOf(String s) throws NumberFormatExceptionParameters :s : a String object to be parsed as floatThrows :NumberFormatException : if String cannot be parsed to a float value.
3.parseFloat(): 通过分析字符串返回浮点值。与valueOf()不同,因为它返回一个基本浮点值,valueOf()返回浮点对象。
Syntax : public static float parseFloat(String val) throws NumberFormatExceptionParameters :val : String representation of float Throws :NumberFormatException : if String cannot be parsed to a float value in given radix.
4.字节值(): 返回与此浮点对象对应的字节值。
Syntax : public byte byteValue()
5.shortValue(): 返回与此浮点对象对应的短值。
Syntax : public short shortValue()
6.intValue(): 返回与此浮点对象对应的int值。
Syntax : public int intValue()
7.longValue(): 返回与此浮点对象对应的长值。
Syntax : public long longValue()
8.doubleValue(): 返回与此浮点对象对应的双精度值。
Syntax : public double doubleValue()
9.floatValue(): 返回与此浮点对象对应的浮点值。
Syntax : public float floatValue()
10.hashCode(): 返回与此浮点对象对应的哈希代码。
Syntax : public int hashCode()
11.伊斯南(): 如果所考虑的浮点对象不是数字,则返回true,否则返回false。
Syntax : public boolean isNaN()
如果不需要创建任何float对象,可以使用另一个静态方法isNaN(float val)。它提供了与上述版本类似的功能。
Syntax : public static boolean isNaN(float val)Parameters :val : float value to check for
12.isInfinite(): 如果所考虑的浮点对象非常大,则返回true,否则返回false。具体来说,任何超出0x7f800000(正极)且低于0xff800000(负极)的数字都是无穷大值。
Syntax : public boolean isInfinite()
如果不需要创建任何float对象,可以使用另一个静态方法isInfinite(float val)。它提供了与上述版本类似的功能。
Syntax : public static boolean isInfinte(float val)Parameters :val : float value to check for
13.toHexString(): 返回参数浮点值的十六进制表示形式。
Syntax : public static String toHexString(float val)Parameters : val : float value to be represented as hex string
14.floatToIntBits(): 返回给定浮点参数的IEEE 754浮点“单格式”位布局。有关IEEE 754浮点“单格式”的详细摘要,请参见 在这里 .
Syntax : public static int floatToIntBits(float val)Parameters :val : float value to convert
15.floatToRawIntBits(): 返回给定浮点参数的IEEE 754浮点“单格式”位布局。它与以前的方法不同,因为它保留了Nan值。
Syntax : public static int floatToRawIntBits(float val)Parameters :val : float value to convert
16.IntBitsToFloat(): 返回与参数的长位模式对应的浮点值。它与前两种方法相反。
Syntax : public static float IntBitsToFloat(long b)Parameters :b : long bit pattern
17.等于: 用于比较两个浮动对象的相等性。如果两个对象包含相同的浮点值,则此方法返回true。仅当检查是否相等时才应使用。在所有其他情况下,应首选比较法。
Syntax : public boolean equals(Object obj)Parameters :obj : object to compare with
18.比较(): 用于比较两个浮点对象的数值相等性。在比较两个浮点数是否相等时,应使用此选项,因为它可以区分较小值和较大值。返回小于0,0的值,对于小于、等于和大于,返回大于0的值。
Syntax : public int compareTo(Float b)Parameters :b : Float object to compare with
19.比较(): 用于比较两个基本浮点值的数值相等性。由于它是一种静态方法,因此可以在不创建任何浮动对象的情况下使用。
Syntax : public static int compare(float x,float y)Parameters :x : float valuey : another float value
例子:
JAVA
// Java program to illustrate // various float class methods // of Java.lang class public class GfG { public static void main(String[] args) { float b = 55 .05F; String bb = "45" ; // Construct two Float objects Float x = new Float(b); Float y = new Float(bb); // toString() System.out.println( "toString(b) = " + Float.toString(b)); // valueOf() // return Float object Float z = Float.valueOf(b); System.out.println( "valueOf(b) = " + z); z = Float.valueOf(bb); System.out.println( "ValueOf(bb) = " + z); // parseFloat() // return primitive float value float zz = Float.parseFloat(bb); System.out.println( "parseFloat(bb) = " + zz); System.out.println( "bytevalue(x) = " + x.byteValue()); System.out.println( "shortvalue(x) = " + x.shortValue()); System.out.println( "intvalue(x) = " + x.intValue()); System.out.println( "longvalue(x) = " + x.longValue()); System.out.println( "doublevalue(x) = " + x.doubleValue()); System.out.println( "floatvalue(x) = " + x.floatValue()); int hash = x.hashCode(); System.out.println( "hashcode(x) = " + hash); boolean eq = x.equals(y); System.out.println( "x.equals(y) = " + eq); int e = Float.compare(x, y); System.out.println( "compare(x,y) = " + e); int f = x.compareTo(y); System.out.println( "x.compareTo(y) = " + f); Float d = Float.valueOf( "1010.54789654123654" ); System.out.println( "isNaN(d) = " + d.isNaN()); System.out.println( "Float.isNaN(45.12452) = " + Float.isNaN( 45 .12452F)); // Float.POSITIVE_INFINITY stores // the positive infinite value d = Float.valueOf(Float.POSITIVE_INFINITY + 1 ); System.out.println( "Float.isInfinite(d) = " + Float.isInfinite(d.floatValue())); float dd = 10245 .21452F; System.out.println( "Float.toString(dd) = " + Float.toHexString(dd)); int float_to_int = Float.floatToIntBits(dd); System.out.println( "Float.floatToLongBits(dd) = " + float_to_int); float int_to_float = Float.intBitsToFloat(float_to_int); System.out.println( "Float.intBitsToFloat(float_to_long) = " + int_to_float); } } |
输出:
toString(b) = 55.05valueOf(b) = 55.05ValueOf(bb) = 45.0parseFloat(bb) = 45.0bytevalue(x) = 55shortvalue(x) = 55intvalue(x) = 55longvalue(x) = 55doublevalue(x) = 55.04999923706055floatvalue(x) = 55.05hashcode(x) = 1113338675x.equals(y) = falsecompare(x,y) = 1x.compareTo(y) = 1isNaN(d) = falseFloat.isNaN(45.12452) = falseFloat.isInfinite(d) = trueFloat.toString(dd) = 0x1.4029b8p13Float.floatToLongBits(dd) = 1176507612Float.intBitsToFloat(float_to_long) = 10245.215
参考资料: 官方Java文档 本文由 Rishabh Mahrsee .如果你喜欢GeekSforgek,并想贡献自己的力量,你也可以使用 写极客。组织 或者把你的文章寄去评论-team@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。 如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写下评论。