2012-04-22 11 views
8

Tengo un problema que parece fácil de resolver, pero no estoy seguro de la sintaxis.Java - Si la instrucción A es igual a B más o menos 2

Necesito tener una sentencia if/else ejecutada, pero no estoy seguro de cómo establecer las condiciones correctamente.

código incorrecto:

if (float_a = float_b or is within +-2 of it) { 
    do this 
} 
else { 
    do that 
} 

¿Cuál es la forma más sencilla de lograr esto?

+0

Eche un vistazo a los operadores '<=' and '> ='. Por supuesto, con flotadores, el redondeo puede o no ser un problema aquí para usted. – Thilo

Respuesta

15

Puede utilizar Math.abs:

if (Math.abs(float_a-float_b) <= 2) { ... } 

Esto significa "si la diferencia absoluta entre a y b se encuentra a 2 ...".

+1

¡Eso es perfecto, gracias! Cuando el temporizador termine le arrojaré la respuesta aceptada. Saludos – Numpty

8
if(Math.abs(float_a - float_b) <= 2) { 
    //do this 
} 
else { 
    //do that 
} 
Cuestiones relacionadas