Estructuras condicionales en Java

java_base_web

Hola a todos, hoy os explicare a como utilizar las estructuras condicionales en Java.

Las estructuras condicionales nos permiten ejecutar una serie de instrucciones si cumple una determinada condición que nosotros le indiquemos. Es importante recordar que la condición debe dar un resultado booleano, por lo que lo mas normal es usar operadores relacionales y condicionales.

Tenemos varios tipos de estructuras condicionales:

  • if: le indicamos una condición si esta es verdadera se ejecuta, sino no se ejecuta las instrucciones de dentro. Se suele traducir como “Si se cumple esta condición haz esto”. Su sintaxis es:
      if (condición){
          instrucciones
      }

Por ejemplo: 

public class PruebaApp {

	public static void main(String[] args) {

		int precio=300;

		if (precio>100){
			System.out.println("El precio es mayor que 100");
		}
	}

}

Donde colocamos la condición, podemos colocar una variable booleana, ya que su valor puede ser true o false.

  • if – else: es como el anterior solo que después de cerrarse la llave de if, se añade else sin indicarle ninguna condición. Esto sirve para que si la condición del if no es verdadera, ejecute otras instrucciones que estarán dentro de else. Se suele traducir como “Si se cumple esta condición haz esto y sino haz esto”.

Veamos un ejemplo:

public class PruebaApp {

	public static void main(String[] args) {

		int precio=50;

		if (precio>100){
			System.out.println("El precio es mayor que 100");
		}else{
			System.out.println("El precio es menor que 100");
		}
	}

}

En este caso, se ejecutara lo que hay en else ya que no cumple la condición.

  • if -elseif: esta estructura es como una mezcla de los anteriores, esto nos permite, que si no se cumple la condición podamos indicar otra condición para hacerlo aún mas especifico. Se suele traducir como  “Si se cumple esta condición haz esto y sino si cumple esta condición haz esto”.

Veamos un ejemplo:

public class PruebaApp {

	public static void main(String[] args) {

		int precio=50;

		if (precio>100){
			System.out.println("El precio es mayor que 100");
		}else if(precio>80){
			System.out.println("El precio es mayor que 80");
		}else{
			System.out.println("El precio es menor que 80");
		}
	}
}

El ejemplo anterior  es equivalente al siguiente, esto es lo que se conoce como if anidados, podemos anidar tantos como queramos:

public class PruebaApp {

	public static void main(String[] args) {

		int precio=50;

		if (precio>100){
			System.out.println("El precio es mayor que 100");
		}else {
			if(precio>80){
			    System.out.println("El precio es mayor que 80");
			}else{
			    System.out.println("El precio es menor que 80");
			}
		}
	}
}
  • Switch: esta estructura condicional de selección múltiple, le damos un valor (puede ser una variable) y una lista de casos y si cumple alguno de los casos ejecuta las instrucciones asociadas a ella, en caso de que ninguna sea podemos indicarle que hace por defecto, normalmente se usa para indicar de un error con un mensaje. Su sintaxis es:
	switch (valor){
		case caso1:
		    Instrucciones
			break;
		case caso2:
		    Instrucciones
			break;
		case caso N:
			Instrucciones
			break;
		default:
			Instrucciones
	}

Veamos un ejemplo:

public class PruebaApp {

	public static void main(String[] args) {

		String dia="Lunes";

		switch (dia){
			case "Lunes":
				System.out.println("Hoy es "+dia);
				break;
			case "Martes":
				System.out.println("Hoy es "+dia);
				break;
			case "Miercoles":
				System.out.println("Hoy es "+dia);
				break;
			case "Jueves":
				System.out.println("Hoy es "+dia);
				break;
			case "Viernes":
				System.out.println("Hoy es "+dia);
				break;
			case "Sabado":
				System.out.println("Hoy es "+dia);
				break;
			case "Domingo":
				System.out.println("Hoy es "+dia);
				break;
			default:
				System.out.println("No has introducido un dia correcto");
		}
	}
}

Como vemos en el caso anterior, como los valores son String debemos poner dobles comillas a los casos. En caso de que sean números, se pondrán como tal, también podríamos usar constantes.

Una cosa más, si haya varios casos que tienen ejecuta las mismas instrucciones, podemos agruparlas. Veamos un ejemplo:

import javax.swing.JOptionPane;
public class PruebaApp {

    public static void main(String[] args) {

        String dia=JOptionPane.showInputDialog("Introduce un dia de la semana");

        switch(dia){
            case "lunes":
            case "martes":
            case "miercoles":
            case "jueves":
            case "viernes":
                System.out.println("Es un dia laboral");
                break;
            case "sabado":
            case "domingo":
                System.out.println("Es un dia festivo");
            default:
                System.out.println("Introduce un dia de la semana");
        }
    }
}

Espero que os sea de ayuda. Si teneis dudas, preguntad. Estamos para ayudarte.

Etiquetas

2 comments

  1. Gracias, muchas gracias :D

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *