包裹类型Float

以下是包裹类型Float的一些描述:

//  (version 1.8 : 52.0, super bit)
// Signature: Ljava/lang/Number;Ljava/lang/Comparable<Ljava/lang/Float;>;
public final class java.lang.Float extends java.lang.Number implements java.lang.Comparable {

// Field descriptor #39 F
public static final float POSITIVE_INFINITY = Infinityf;

// Field descriptor #39 F
public static final float NEGATIVE_INFINITY = -Infinityf;

// Field descriptor #39 F
public static final float NaN = NaNf;

// Field descriptor #39 F
public static final float MAX_VALUE = 3.4028235E38f;

// Field descriptor #39 F
public static final float MIN_NORMAL = 1.17549435E-38f;

// Field descriptor #39 F
public static final float MIN_VALUE = 1.4E-45f;

// Field descriptor #40 I
public static final int MAX_EXPONENT = 127;

// Field descriptor #40 I
public static final int MIN_EXPONENT = -126;

// Field descriptor #40 I
public static final int SIZE = 32;

// Field descriptor #40 I
public static final int BYTES = 4;

// Field descriptor #42 Ljava/lang/Class;
// Signature: Ljava/lang/Class<Ljava/lang/Float;>;
public static final java.lang.Class TYPE;

// Field descriptor #39 F
private final float value;

// Field descriptor #41 J
private static final long serialVersionUID = -2671257302660747028L;

// Method descriptor #119 (F)Ljava/lang/String;
// Stack: 1, Locals: 1
public static java.lang.String toString(float arg0);
0  fload_0 [arg0]
1  invokestatic sun.misc.FloatingDecimal.toJavaFormatString(float) : java.lang.String [164]
4  areturn

// Method descriptor #119 (F)Ljava/lang/String;
// Stack: 3, Locals: 2
public static java.lang.String toHexString(float arg0);
0  fload_0 [arg0]
1  invokestatic java.lang.Math.abs(float) : float [159]
4  ldc <Float 1.17549435E-38> [5]
6  fcmpg
7  ifge 37
10  fload_0 [arg0]
11  fconst_0
12  fcmpl
13  ifeq 37
16  fload_0 [arg0]
17  f2d
18  sipush -896
21  invokestatic java.lang.Math.scalb(double, int) : double [158]
24  invokestatic java.lang.Double.toHexString(double) : java.lang.String [147]
27  astore_1
28  aload_1
29  ldc <String “p-1022$”> [9]
31  ldc <String “p-126”> [10]
33  invokevirtual java.lang.String.replaceFirst(java.lang.String, java.lang.String) : java.lang.String [163]
36  areturn
37  fload_0 [arg0]
38  f2d
39  invokestatic java.lang.Double.toHexString(double) : java.lang.String [147]
42  areturn
Stack map table: number of frames 1
[pc: 37, same]

// Method descriptor #121 (Ljava/lang/String;)Ljava/lang/Float;
// Stack: 3, Locals: 1
public static java.lang.Float valueOf(java.lang.String arg0) throws java.lang.NumberFormatException;
0  new java.lang.Float [108]
3  dup
4  aload_0 [arg0]
5  invokestatic java.lang.Float.parseFloat(java.lang.String) : float [157]
8  invokespecial java.lang.Float(float) [151]
11  areturn

// Method descriptor #116 (F)Ljava/lang/Float;
// Stack: 3, Locals: 1
public static java.lang.Float valueOf(float arg0);
0  new java.lang.Float [108]
3  dup
4  fload_0 [arg0]
5  invokespecial java.lang.Float(float) [151]
8  areturn

// Method descriptor #120 (Ljava/lang/String;)F
// Stack: 1, Locals: 1
public static float parseFloat(java.lang.String arg0) throws java.lang.NumberFormatException;
0  aload_0 [arg0]
1  invokestatic sun.misc.FloatingDecimal.parseFloat(java.lang.String) : float [165]
4  freturn

// Method descriptor #26 (F)Z
// Stack: 2, Locals: 1
public static boolean isNaN(float arg0);
0  fload_0 [arg0]
1  fload_0 [arg0]
2  fcmpl
3  ifeq 10
6  iconst_1
7  goto 11
10  iconst_0
11  ireturn
Stack map table: number of frames 2
[pc: 10, same]
[pc: 11, same_locals_1_stack_item, stack: {int}]

// Method descriptor #26 (F)Z
// Stack: 2, Locals: 1
public static boolean isInfinite(float arg0);
0  fload_0 [arg0]
1  ldc <Float Infinity> [7]
3  fcmpl
4  ifeq 14
7  fload_0 [arg0]
8  ldc <Float -Infinity> [4]
10  fcmpl
11  ifne 18
14  iconst_1
15  goto 19
18  iconst_0
19  ireturn
Stack map table: number of frames 3
[pc: 14, same]
[pc: 18, same]
[pc: 19, same_locals_1_stack_item, stack: {int}]

// Method descriptor #26 (F)Z
// Stack: 2, Locals: 1
public static boolean isFinite(float arg0);
0  fload_0 [arg0]
1  invokestatic java.lang.Math.abs(float) : float [159]
4  ldc <Float 3.4028235E38> [6]
6  fcmpg
7  ifgt 14
10  iconst_1
11  goto 15
14  iconst_0
15  ireturn
Stack map table: number of frames 2
[pc: 14, same]
[pc: 15, same_locals_1_stack_item, stack: {int}]

// Method descriptor #25 (F)V
// Stack: 2, Locals: 2
public Float(float arg0);
0  aload_0 [this]
1  invokespecial java.lang.Number() [162]
4  aload_0 [this]
5  fload_1 [arg0]
6  putfield java.lang.Float.value : float [144]
9  return

// Method descriptor #21 (D)V
// Stack: 3, Locals: 3
public Float(double arg0);
0  aload_0 [this]
1  invokespecial java.lang.Number() [162]
4  aload_0 [this]
5  dload_1 [arg0]
6  d2f
7  putfield java.lang.Float.value : float [144]
10  return

// Method descriptor #32 (Ljava/lang/String;)V
// Stack: 2, Locals: 2
public Float(java.lang.String arg0) throws java.lang.NumberFormatException;
0  aload_0 [this]
1  invokespecial java.lang.Number() [162]
4  aload_0 [this]
5  aload_1 [arg0]
6  invokestatic java.lang.Float.parseFloat(java.lang.String) : float [157]
9  putfield java.lang.Float.value : float [144]
12  return

// Method descriptor #19 ()Z
// Stack: 1, Locals: 1
public boolean isNaN();
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  invokestatic java.lang.Float.isNaN(float) : boolean [153]
7  ireturn

// Method descriptor #19 ()Z
// Stack: 1, Locals: 1
public boolean isInfinite();
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  invokestatic java.lang.Float.isInfinite(float) : boolean [152]
7  ireturn

// Method descriptor #16 ()Ljava/lang/String;
// Stack: 1, Locals: 1
public java.lang.String toString();
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  invokestatic java.lang.Float.toString(float) : java.lang.String [156]
7  areturn

// Method descriptor #11 ()B
// Stack: 1, Locals: 1
public byte byteValue();
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  f2i
5  i2b
6  ireturn

// Method descriptor #17 ()S
// Stack: 1, Locals: 1
public short shortValue();
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  f2i
5  i2s
6  ireturn

// Method descriptor #14 ()I
// Stack: 1, Locals: 1
public int intValue();
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  f2i
5  ireturn

// Method descriptor #15 ()J
// Stack: 2, Locals: 1
public long longValue();
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  f2l
5  lreturn

// Method descriptor #13 ()F
// Stack: 1, Locals: 1
public float floatValue();
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  freturn

// Method descriptor #12 ()D
// Stack: 2, Locals: 1
public double doubleValue();
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  f2d
5  dreturn

// Method descriptor #14 ()I
// Stack: 1, Locals: 1
public int hashCode();
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  invokestatic java.lang.Float.hashCode(float) : int [150]
7  ireturn

// Method descriptor #24 (F)I
// Stack: 1, Locals: 1
public static int hashCode(float arg0);
0  fload_0 [arg0]
1  invokestatic java.lang.Float.floatToIntBits(float) : int [148]
4  ireturn

// Method descriptor #30 (Ljava/lang/Object;)Z
// Stack: 2, Locals: 2
public boolean equals(java.lang.Object arg0);
0  aload_1 [arg0]
1  instanceof java.lang.Float [108]
4  ifeq 31
7  aload_1 [arg0]
8  checkcast java.lang.Float [108]
11  getfield java.lang.Float.value : float [144]
14  invokestatic java.lang.Float.floatToIntBits(float) : int [148]
17  aload_0 [this]
18  getfield java.lang.Float.value : float [144]
21  invokestatic java.lang.Float.floatToIntBits(float) : int [148]
24  if_icmpne 31
27  iconst_1
28  goto 32
31  iconst_0
32  ireturn
Stack map table: number of frames 2
[pc: 31, same]
[pc: 32, same_locals_1_stack_item, stack: {int}]

// Method descriptor #24 (F)I
// Stack: 2, Locals: 2
public static int floatToIntBits(float arg0);
0  fload_0 [arg0]
1  invokestatic java.lang.Float.floatToRawIntBits(float) : int [149]
4  istore_1
5  iload_1
6  ldc <Integer 2139095040> [2]
8  iand
9  ldc <Integer 2139095040> [2]
11  if_icmpne 24
14  iload_1
15  ldc <Integer 8388607> [1]
17  iand
18  ifeq 24
21  ldc <Integer 2143289344> [3]
23  istore_1
24  iload_1
25  ireturn
Stack map table: number of frames 1
[pc: 24, append: {int}]

// Method descriptor #24 (F)I
public static native int floatToRawIntBits(float arg0);

// Method descriptor #29 (I)F
public static native float intBitsToFloat(int arg0);

// Method descriptor #117 (Ljava/lang/Float;)I
// Stack: 2, Locals: 2
public int compareTo(java.lang.Float arg0);
0  aload_0 [this]
1  getfield java.lang.Float.value : float [144]
4  aload_1 [arg0]
5  getfield java.lang.Float.value : float [144]
8  invokestatic java.lang.Float.compare(float, float) : int [154]
11  ireturn

// Method descriptor #28 (FF)I
// Stack: 2, Locals: 4
public static int compare(float arg0, float arg1);
0  fload_0 [arg0]
1  fload_1 [arg1]
2  fcmpg
3  ifge 8
6  iconst_m1
7  ireturn
8  fload_0 [arg0]
9  fload_1 [arg1]
10  fcmpl
11  ifle 16
14  iconst_1
15  ireturn
16  fload_0 [arg0]
17  invokestatic java.lang.Float.floatToIntBits(float) : int [148]
20  istore_2
21  fload_1 [arg1]
22  invokestatic java.lang.Float.floatToIntBits(float) : int [148]
25  istore_3
26  iload_2
27  iload_3
28  if_icmpne 35
31  iconst_0
32  goto 45
35  iload_2
36  iload_3
37  if_icmpge 44
40  iconst_m1
41  goto 45
44  iconst_1
45  ireturn
Stack map table: number of frames 5
[pc: 8, same]
[pc: 16, same]
[pc: 35, append: {int, int}]
[pc: 44, same]
[pc: 45, same_locals_1_stack_item, stack: {int}]

// Method descriptor #27 (FF)F
// Stack: 2, Locals: 2
public static float sum(float arg0, float arg1);
0  fload_0 [arg0]
1  fload_1 [arg1]
2  fadd
3  freturn

// Method descriptor #27 (FF)F
// Stack: 2, Locals: 2
public static float max(float arg0, float arg1);
0  fload_0 [arg0]
1  fload_1 [arg1]
2  invokestatic java.lang.Math.max(float, float) : float [160]
5  freturn

// Method descriptor #27 (FF)F
// Stack: 2, Locals: 2
public static float min(float arg0, float arg1);
0  fload_0 [arg0]
1  fload_1 [arg1]
2  invokestatic java.lang.Math.min(float, float) : float [161]
5  freturn

// Method descriptor #118 (Ljava/lang/Object;)I
// Stack: 2, Locals: 2
public bridge synthetic int compareTo(java.lang.Object arg0);
0  aload_0 [this]
1  aload_1 [arg0]
2  checkcast java.lang.Float [108]
5  invokevirtual java.lang.Float.compareTo(java.lang.Float) : int [155]
8  ireturn

// Method descriptor #18 ()V
// Stack: 1, Locals: 0
static {};
0  ldc <String “float”> [8]
2  invokestatic java.lang.Class.getPrimitiveClass(java.lang.String) : java.lang.Class [146]
5  putstatic java.lang.Float.TYPE : java.lang.Class [145]
8  return

}