Toma de decisiones en Java (if, if-else, switch, break, continue, jump)

La toma de decisiones en la programación es similar a la toma de decisiones en la vida real. En programación también nos enfrentamos a algunas situaciones en las que queremos que un determinado bloque de código se ejecute cuando se cumpla alguna condición. 

Un lenguaje de programación utiliza declaraciones de control para controlar el flujo de ejecución de un programa en función de ciertas condiciones. Estos se utilizan para hacer que el flujo de ejecución avance y se bifurque en función de los cambios en el estado de un programa. 

Declaraciones de selección de Java: 

1. si: si la declaración es la declaración de toma de decisiones más simple. Se utiliza para decidir si una determinada instrucción o bloque de instrucciones se ejecutará o no, es decir, si una determinada condición es verdadera, entonces se ejecutará un bloque de instrucciones; de lo contrario, no se ejecutará. 

Sintaxis

if(condition) 
{
   // Statements to execute if
   // condition is true
}

Aquí, la condición después de la evaluación será verdadera o falsa. Si la declaración acepta valores booleanos: si el valor es verdadero, ejecutará el bloque de declaraciones debajo de él. 
Si no proporcionamos las llaves ‘{‘ y ‘}’ después de if(condición), entonces, por defecto, la declaración if considerará que la declaración inmediata está dentro de su bloque. Por ejemplo, 

if(condition)
   statement1;
   statement2;

// Here if the condition is true, if block 
// will consider only statement1 to be inside 
// its block.

if-statement-in-java

Ejemplo:

Java

// Java program to illustrate If statement
class IfDemo {
    public static void main(String args[])
    {
        int i = 10;
 
        if (i > 15)
            System.out.println("10 is less than 15");
 
        // This statement will be executed
        // as if considers one statement by default
        System.out.println("I am Not in if");
    }
}
Producción

I am Not in if

2. if-else : La sentencia if por sí sola nos dice que si una condición es verdadera ejecutará un bloque de sentencias y si la condición es falsa no lo hará. Pero qué pasa si queremos hacer otra cosa si la condición es falsa. Aquí viene la declaración else. Podemos usar la instrucción else con la instrucción if para ejecutar un bloque de código cuando la condición es falsa. 

Sintaxis

if (condition)
{
    // Executes this block if
    // condition is true
}
else
{
    // Executes this block if
    // condition is false
}

if-else-statement

Ejemplo:

Java

// Java program to illustrate if-else statement
class IfElseDemo {
    public static void main(String args[])
    {
        int i = 10;
 
        if (i < 15)
            System.out.println("i is smaller than 15");
        else
            System.out.println("i is greater than 15");
    }
}
Producción

i is smaller than 15

Complejidad de tiempo: O(1)

Espacio Auxiliar : O(1)

3. if anidado: un if anidado es una declaración if que es el objetivo de otro if o else. Las declaraciones if anidadas significan una declaración if dentro de una declaración if. Sí, java nos permite anidar sentencias if dentro de sentencias if. es decir, podemos colocar una sentencia if dentro de otra sentencia if. 

Sintaxis: 

if (condition1) 
{
   // Executes when condition1 is true
   if (condition2) 
   {
      // Executes when condition2 is true
   }
}

nested-if

Ejemplo:

Java

// Java program to illustrate nested-if statement
 
class NestedIfDemo {
    public static void main(String args[])
    {
        int i = 10;
 
        if (i == 10 || i<15) {
            // First if statement
            if (i < 15)
                System.out.println("i is smaller than 15");
 
            // Nested - if statement
            // Will only be executed if statement above
            // it is true
            if (i < 12)
                System.out.println(
                    "i is smaller than 12 too");
        } else{
                System.out.println("i is greater than 15");
        }
    }
}
Producción

i is smaller than 15
i is smaller than 12 too

Complejidad de tiempo: O(1)

Espacio Auxiliar: O(1)

4. escalera if-else-if: aquí, un usuario puede decidir entre múltiples opciones. Las declaraciones if se ejecutan de arriba hacia abajo. Tan pronto como una de las condiciones que controlan el if es verdadera, se ejecuta la declaración asociada con ese if y se omite el resto de la escalera. Si ninguna de las condiciones es verdadera, entonces se ejecutará la instrucción else final. 

if (condition)
    statement;
else if (condition)
    statement;
.
.
else
    statement;

if-else-if-ladder

Ejemplo:

Java

// Java program to illustrate if-else-if ladder
 
class ifelseifDemo {
    public static void main(String args[])
    {
        int i = 20;
 
        if (i == 10)
            System.out.println("i is 10");
        else if (i == 15)
            System.out.println("i is 15");
        else if (i == 20)
            System.out.println("i is 20");
        else
            System.out.println("i is not present");
    }
}
Producción

i is 20

Complejidad de tiempo: O(1)

Espacio Auxiliar: O(1)

5. switch-case: La sentencia switch es una sentencia de bifurcación multidireccional. Proporciona una forma sencilla de enviar la ejecución a diferentes partes del código en función del valor de la expresión. 

Sintaxis: 

switch (expression)
{
  case value1:
    statement1;
    break;
  case value2:
    statement2;
    break;
  .
  .
  case valueN:
    statementN;
    break;
  default:
    statementDefault;
}
  • La expresión puede ser de tipo byte, short, int char o una enumeración. A partir de JDK7, la expresión también puede ser de tipo String.
  • No se permiten valores de mayúsculas y minúsculas duplicados.
  • La declaración predeterminada es opcional.
  • La sentencia break se utiliza dentro del interruptor para terminar una secuencia de sentencias.
  • La instrucción break es opcional. Si se omite, la ejecución continuará en el siguiente caso.

6. salto: Java admite tres sentencias de salto: romper, continuar y regresar . Estas tres sentencias transfieren el control a otra parte del programa. 

  • Pausa: en Java, una pausa se usa principalmente para: 
    • Terminar una secuencia en una declaración de cambio (discutido anteriormente).
    • Para salir de un bucle.
    • Usado como una forma «civilizada» de goto.
  • Continuar: a veces es útil forzar una iteración temprana de un ciclo. Es decir, es posible que desee continuar ejecutando el ciclo pero dejar de procesar el resto del código en su cuerpo para esta iteración en particular. Esto es, en efecto, un goto justo después del cuerpo del ciclo, hasta el final del ciclo. La sentencia continue realiza tal acción. 

continue-in-java

Ejemplo:

Java

// Java program to illustrate using
// continue in an if statement
class ContinueDemo {
    public static void main(String args[])
    {
        for (int i = 0; i < 10; i++) {
            // If the number is even
            // skip and continue
            if (i % 2 == 0)
                continue;
 
            // If number is odd, print it
            System.out.print(i + " ");
        }
    }
}
Producción

1 3 5 7 9 

Complejidad de tiempo: O(1)

Espacio Auxiliar: O(1)

  • Retorno: la declaración de retorno se utiliza para devolver explícitamente desde un método. Es decir, hace que el control del programa se transfiera de nuevo al llamador del método.

Ejemplo:

Java

// Java program to illustrate using return
class Return {
    public static void main(String args[])
    {
        boolean t = true;
        System.out.println("Before the return.");
 
        if (t)
            return;
 
        // Compiler will bypass every statement
        // after return
        System.out.println("This won't execute.");
    }
}
Producción

Before the return.

Complejidad de tiempo: O(1)

Espacio Auxiliar: O(1)

Este artículo es una contribución de Anuj Chauhan y Harsh Aggarwal . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. 

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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