```
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package java.lang;
27
28 import jdk.internal.math.FloatingDecimal;
29 import jdk.internal.HotSpotIntrinsicCandidate;
30
31 /**
32 * The {@code Float} class wraps a value of primitive type
33 * {@code float} in an object. An object of type
34 * {@code Float} contains a single field whose type is
35 * {@code float}.
36 *
37 * <p>In addition, this class provides several methods for converting a
38 * {@code float} to a {@code String} and a
39 * {@code String} to a {@code float}, as well as other
40 * constants and methods useful when dealing with a
41 * {@code float}.
42 *
43 * @author Lee Boynton
44 * @author Arthur van Hoff
45 * @author Joseph D. Darcy
46 * @since 1.0
47 */
48 public final class Float extends Number implements Comparable<Float> {
49 /**
50 * A constant holding the positive infinity of type
51 * {@code float}. It is equal to the value returned by
52 * {@code Float.intBitsToFloat(0x7f800000)}.
53 */
54 public static final float POSITIVE_INFINITY = 1.0f / 0.0f;
55
56 /**
57 * A constant holding the negative infinity of type
58 * {@code float}. It is equal to the value returned by
59 * {@code Float.intBitsToFloat(0xff800000)}.
60 */
61 public static final float NEGATIVE_INFINITY = -1.0f / 0.0f;
62
63 /**
64 * A constant holding a Not-a-Number (NaN) value of type
65 * {@code float}. It is equivalent to the value returned by
66 * {@code Float.intBitsToFloat(0x7fc00000)}.
67 */
68 public static final float NaN = 0.0f / 0.0f;
``` 959 * @return the greater of {@code a} and {@code b} 960 * @see java.util.function.BinaryOperator 961 * @since 1.8 962 */ 963 public static float max(float a, float b) { 964 return Math.max(a, b); 965 } 966 967 /** 968 * Returns the smaller of two {@code float} values 969 * as if by calling {@link Math#min(float, float) Math.min}. 970 * 971 * @param a the first operand 972 * @param b the second operand 973 * @return the smaller of {@code a} and {@code b} 974 * @see java.util.function.BinaryOperator 975 * @since 1.8 976 */ 977 public static float min(float a, float b) { 978 return Math.min(a, b); 979 } 980 981 /** use serialVersionUID from JDK 1.0.2 for interoperability */ 982 private static final long serialVersionUID = -2671257302660747028L; 983 } | 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 package java.lang; 27 28 import java.lang.invoke.Constable; 29 import java.lang.invoke.MethodHandles; 30 31 import jdk.internal.math.FloatingDecimal; 32 import jdk.internal.HotSpotIntrinsicCandidate; 33 34 /** 35 * The {@code Float} class wraps a value of primitive type 36 * {@code float} in an object. An object of type 37 * {@code Float} contains a single field whose type is 38 * {@code float}. 39 * 40 * <p>In addition, this class provides several methods for converting a 41 * {@code float} to a {@code String} and a 42 * {@code String} to a {@code float}, as well as other 43 * constants and methods useful when dealing with a 44 * {@code float}. 45 * 46 * @author Lee Boynton 47 * @author Arthur van Hoff 48 * @author Joseph D. Darcy 49 * @since 1.0 50 */ 51 public final class Float extends Number implements Comparable<Float>, Constable<Float> { 52 /** 53 * A constant holding the positive infinity of type 54 * {@code float}. It is equal to the value returned by 55 * {@code Float.intBitsToFloat(0x7f800000)}. 56 */ 57 public static final float POSITIVE_INFINITY = 1.0f / 0.0f; 58 59 /** 60 * A constant holding the negative infinity of type 61 * {@code float}. It is equal to the value returned by 62 * {@code Float.intBitsToFloat(0xff800000)}. 63 */ 64 public static final float NEGATIVE_INFINITY = -1.0f / 0.0f; 65 66 /** 67 * A constant holding a Not-a-Number (NaN) value of type 68 * {@code float}. It is equivalent to the value returned by 69 * {@code Float.intBitsToFloat(0x7fc00000)}. 70 */ 71 public static final float NaN = 0.0f / 0.0f; 962 * @return the greater of {@code a} and {@code b} 963 * @see java.util.function.BinaryOperator 964 * @since 1.8 965 */ 966 public static float max(float a, float b) { 967 return Math.max(a, b); 968 } 969 970 /** 971 * Returns the smaller of two {@code float} values 972 * as if by calling {@link Math#min(float, float) Math.min}. 973 * 974 * @param a the first operand 975 * @param b the second operand 976 * @return the smaller of {@code a} and {@code b} 977 * @see java.util.function.BinaryOperator 978 * @since 1.8 979 */ 980 public static float min(float a, float b) { 981 return Math.min(a, b); 982 } 983 984 985 @Override 986 public Float resolveConstant(MethodHandles.Lookup lookup) { 987 return this; 988 } 989 990 /** use serialVersionUID from JDK 1.0.2 for interoperability */ 991 private static final long serialVersionUID = -2671257302660747028L; 992 } |