Operadores lógicos de cortocircuito en Java con ejemplos

En los operadores lógicos de Java , si la evaluación de una expresión lógica existe entre antes de la evaluación completa, se conoce como Cortocircuito . Ocurre un cortocircuito porque el resultado es claro incluso antes de la evaluación completa de la expresión y se devuelve el resultado. La evaluación de cortocircuitos evita trabajo innecesario y conduce a un procesamiento eficiente.

A continuación se muestran los diversos tipos de cortocircuitos que se producen en Java:

1. Y (&&) cortocircuito: 

En el caso de AND, la expresión se evalúa hasta que obtengamos un resultado falso porque el resultado siempre será falso, independientemente de las condiciones adicionales. Si hay una expresión con &&(AND lógico) y el primer operando en sí es falso, se produce un cortocircuito, la expresión posterior no se evalúa y se devuelve falso.

Ejemplo: Cortocircuito usando el operador AND(&&).

Java

// Java code to demonstrate the
// short circuiting using &&
  
import java.io.*;
  
class ShortCirAND {
    public static void main(String arg[])
    {
  
        // Since first operand is false
        // and operator is &&,
        // Evaluation stops and
        // false is returned.
        if (false && true && true) {
            System.out.println("This output "
                               + "will not "
                               + "be printed");
        }
        else {
  
            System.out.println("This output "
                               + "got printed actually, "
                               + " due to short circuit");
        }
  
        // Whole expression will be evaluated,
        // as no false is encountered
        // before last condition
        // Therefore no Short circuit
        if (true && true && true) {
            System.out.println("This output "
                               + "gets print"
                               + " as there will be"
                               + " no Short circuit");
        }
        else {
  
            System.out.println("This output "
                               + "will not "
                               + "be printed");
        }
    }
}
Producción

This output got printed actually,  due to short circuit
This output gets print as there will be no Short circuit

2. O(||) cortocircuito: 

En el caso de OR, la expresión se evalúa hasta que obtengamos un resultado verdadero porque el resultado siempre será verdadero, independientemente de las condiciones adicionales. Si hay una expresión con ||(OR lógico) y el primer operando es verdadero, se produce un cortocircuito, la evaluación se detiene y se devuelve verdadero.

Ejemplo: Cortocircuito usando OR( || ).

Java

// Java program to demonstrate the
// short circuiting using OR
  
class ShortCirOR {
    public static void main(String arg[])
    {
  
        // Since first operand is true
        // and operator is ||,
        // Evaluation stops and
        // true is returned.
        if (true || false || false) {
            System.out.println("This output "
                               + "got printed actually, "
                               + " due to short circuit");
        }
        else {
            System.out.println("This output "
                               + "will not "
                               + "be printed");
        }
  
        // Whole expression will be evaluated,
        // as no true is encountered
        // before last condition
        // Therefore no Short circuit
        if (false || false || true) {
            System.out.println("This output "
                               + "gets print"
                               + " as there will be"
                               + " no Short circuit");
        }
        else {
  
            System.out.println("This output "
                               + "will not "
                               + "be printed");
        }
    }
}
Producción

This output got printed actually,  due to short circuit
This output gets print as there will be no Short circuit

Publicación traducida automáticamente

Artículo escrito por shivani_21 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 *