Codificación aprenderaprogramar.com: CU00636B
ESTRUCTURA O ESQUEMA DE DECISIÓN EN JAVA. IF ELSE , IF ELSE IF.
La instrucción if … else permite controlar qué procesos tienen lugar, típicamente en función del valor de una o varias variables, de un valor de cálculo o booleano, o de las decisiones del usuario. La sintaxis a emplear es:
/* Ejemplo Estructura IF - aprenderaprogramar.com */ if (condición) { instrucciones } else { instrucciones } |
Esquemáticamente en forma de diagrama de flujo:
La cláusula else (no obligatoria) sirve para indicar instrucciones a realizar en caso de no cumplirse la condición. Java admite escribir un else y dejarlo vacío: else { }. El else vacío se interpreta como que contemplamos el caso pero no hacemos nada en respuesta a él. Un else vacío no tiene ningún efecto y en principio carece de utilidad, no obstante a veces es usado para remarcar que no se ejecuta ninguna acción cuando se alcanza esa situación.
Cuando se quieren evaluar distintas condiciones una detrás de otra, se usa la expresión else if { }. En este caso no se admite elseif todo junto como en otros lenguajes. De este modo, la evaluación que se produce es: si se cumple la primera condición, se ejecutan ciertas instrucciones; si no se cumple, comprobamos la segunda, tercera, cuarta… n condición. Si no se cumple ninguna de las condiciones, se ejecuta el else final en caso de existir.
/* Ejemplo - aprenderaprogramar.com */ //if sencillo if ( admitido == true) { System.out.println ("Se ha admitido el valor"); }
//if else sencillo if ( admitido == true) { System.out.println ("Se ha admitido el valor"); } else { System.out.println ("No se ha admitido el valor"); } //if con else if y cláusula final else if (DesplazamientoX == 0 && DesplazamientoY == 1) { System.out.println ("Se procede a bajar el personaje 1 posición"); } else if (DesplazamientoX == 1 && DesplazamientoY == 0) { System.out.println ("Se procede a mover el personaje 1 posición a la derecha"); }
else if (DesplazamientoX == -1 && DesplazamientoY == 0) { System.out.println ("Se procede a mover el personaje 1 posición a la izquierda"); } else { System.out.println ("Los valores no son válidos"); } |
Intenta compilar este código en una clase. Para ello declara la clase, declara las variables que intervienen, inicialízalas en un constructor, e incorpora tres métodos que se correspondan con los tres ejemplos de uso de if que hemos visto.
La expresión dentro de paréntesis es una expresión booleana. Llamamos expresión booleana a una expresión que solo tiene dos valores posibles: verdadero (true) o falso (false).
Es importante distinguir la comparación que realizamos con el operador == de la asignación que realizamos con el operador =. Confundirlos nos generará errores de compilación o problemas de lógica en el código. Recuerda que siempre que tengas que comparar con un operador, has de usar == en lugar de =.
EJERCICIO
Considera estás desarrollando un programa Java donde necesitas trabajar con objetos de tipo Rueda (que representa a una rueda de un vehículo). Define una clase Rueda considerando los siguientes atributos de clase: tipo (String), grosor (double), diametro (double), marca (String). Define un constructor asignando unos valores de defecto a los atributos y los métodos para poder establecer y obtener los valores de los atributos. Crea un método denominado comprobarDimensiones donde a través de condicionales if realices las siguientes comprobaciones:
a) Si el diámetro es superior a 1.4 debe mostrarse por consola el mensaje “La rueda es para un vehículo grande”. Si es menor o igual a 1.4 pero mayor que 0.8 debe mostrarse por consola el mensaje “La rueda es para un vehículo mediano”. Si no se cumplen ninguna de las condiciones anteriores debe mostrarse por pantalla el mensaje “La rueda es para un vehículo pequeño”.
b) Si el diámetro es superior a 1.4 con un grosor inferior a 0.4, ó si el diámetro es menor o igual a 1.4 pero mayor que 0.8, con un grosor inferior a 0.25, deberá mostrarse por consola el mensaje “El grosor para esta rueda es inferior al recomendado”.
Compila el código para comprobar que no presenta errores, crea un objeto, usa sus métodos y comprueba que aparezcan correctamente los mensajes por consola. Para comprobar si es correcta tu solución puedes consultar en los foros aprenderaprogramar.com.
Para acceder a la información general sobre este curso y al listado completo de entregas pulsa en este link: Ver curso completo.
Para hacer un comentario o consulta utiliza los foros aprenderaprogramar.com, abiertos a cualquier persona independientemente de su nivel de conocimiento.