HOWTO · Java

Diferencia entre & y && en Java

Este tutorial demuestra la diferencia entre & y && en java.

Un operador en Java es un símbolo que puede realizar alguna operación deseada en un conjunto de valores. Java tiene diferentes tipos de tipos de operadores como lógicos, aritméticos, bit a bit y más.

En este tutorial, intentaremos estudiar y comprender la diferencia entre el operador & y && en Java.

El operador & es un operador bit a bit. Los operadores bit a bit se utilizan básicamente para trabajar y manipular bits individuales de los números. Opera a ambos lados del operador. El operador & bit a bit es un operador binario que realiza la operación AND bit a bit en sus operandos.

El siguiente código demuestra el uso del operador &.

public class operators {
  public static void main(String[] args) {
    int a = 5;
    int b = 7;
    System.out.println("a&b = " + (a & b)); // 0101 & 0111=0101 = 5
  }
}

Producción :

a&b = 5

El && es el operador lógico Y que trabaja con operandos booleanos. Como sugiere el nombre, los operadores lógicos pueden realizar la operación lógica y combinar dos o más condiciones. Estos se pueden utilizar con cualquier forma de tipo de datos.

El operador lógico && devuelve verdadero cuando ambas condiciones son verdaderas. Evalúa los operandos de izquierda a derecha. Convierte cada operando en un valor booleano y devuelve el valor original después de operar.

El siguiente código demuestra el operador &&.

import java.io.*;

class Logical_Operator {
  public static void main(String[] args) {
    int a = 10, b = 20, c = 20 System.out.println("Var1 = " + a);
    System.out.println("Var2 = " + b);
    System.out.println("Var3 = " + c);
    if ((a < b) && (b == c)) {
      System.out.println("True Conditions");
    } else
      System.out.println("False conditions");
  }
}

Producción :

A = 10
B = 20
C = 20

True Conditions

En el ejemplo anterior, ambas condiciones son verdaderas. Por eso se imprime True Conditions. Incluso si uno de ellos fuera falso, entonces se habría publicado False Conditions.