Para responder a su pregunta específica:
Me encontré con ellos buscando un valor que fuera mayor que cada dos flotantes o en su defecto todos menos el más grande. ¿Cumple cualquiera de los criterios ?
Sí, Float.POSITIVE_INFINITY
es, por definición, la única Float
que es mayor que Float.MAX_VALUE
. Sin embargo, es algo así como un caso especial en términos de cómo interactúa con las operaciones matemáticas.
Desde el javadoc:
public static final float POSITIVE_INFINITY:
Una constante que sostiene el infinito positivo de tipo float. Es igual a el valor devuelto por Float.intBitsToFloat (0x7f800000).
public static final float MAX_VALUE:
Una constante que sostiene el mayor valor positivo finito de tipo flotador, (02/02/23) · 2127. Es igual al literal de coma flotante hexadecimal 0x1.fffffeP + 127f y también igual a Float.intBitsToFloat (0x7f7fffff).
Por lo tanto, como se puede ver, de acuerdo con la definición literal es que POSITIVE_INFINITY
MAX_VALUE
es mayor que en un bit.
En términos de su utilidad, POSITIVE_INFINITY
proporciona un valor que puede usar para reconocer expresiones matemáticas que de otro modo serían problemáticas. El utilizado en la fuente JDK es 1.0f/0.0f
. El resultado de esta expresión es POSITIVE_INFINITY
, lo que indica que ha excedido el límite superior de las matemáticas razonables, que nunca regresará. Dadas las dos constantes POSITIVE_INFINITY
y NEGATIVE_INFINITY
, puede verificar si una expresión general ha salido de los límites de los Flotantes útiles y si fue la puerta positiva o negativa.
MAX_VALUE
, por otro lado, representa el valor máximo en el que aún puede aplicar operaciones matemáticas normales. Por ejemplo, MAX_VALUE - 1.0f
es un número (muy ligeramente) más pequeño que MAX_VALUE
. POSITIVE_INFINITY - 1.0f
, sin embargo, sigue siendo POSITIVE_INFINITY
.
Entonces, en comparación con cualquier otro Float, Float.POSITIVE_INFINITY siempre será mayor? – Adam
@ Adam: A menos que el otro flotador sea 'NaN', sí. ('NaN' no es mayor que ni menor que igual a cualquier flotante). –
Perfecto. ¡Gracias! – Adam