Los ope­ra­do­res lógicos de Java AND y OR se utilizan para comprobar la co­rre­c­ción de dos co­n­di­cio­nes. Aunque ambas funciones trabajan de forma muy similar, difieren en los detalles. Te ex­pli­ca­mos cómo funcionan estos ope­ra­do­res mediante unos sencillos ejemplos.

Ope­ra­do­res Java AND y OR

Los ope­ra­do­res de Java son una he­rra­mie­n­ta im­po­r­ta­n­te a la hora de trabajar con este lenguaje de pro­gra­ma­ción. Se pueden dividir en di­fe­re­n­tes ca­te­go­rías y cumplir di­fe­re­n­tes tareas. Dos he­rra­mie­n­tas es­pe­cia­l­me­n­te útiles para aprender a programar son los ope­ra­do­res AND y OR. Ambos pe­r­te­ne­cen al grupo de los ope­ra­do­res lógicos y se utilizan para analizar la co­rre­c­ción de un estado supuesto. Para ello, emiten un valor booleano como respuesta. Éste es “true” si el enunciado es correcto, o “false” si no lo es.

El operador AND en Java analiza dos estados y solo devuelve “true” si ambos estados son ve­r­da­de­ros. En caso contrario, responde con “false”. Se expresa con “&&”. El operador OR en Java también analiza dos estados y devuelve “true” si al menos una de las dos afi­r­ma­cio­nes es verdadera. Solo si ambas afi­r­ma­cio­nes son falsas responde con “false”. Se indica con “||”.

La sintaxis de ambos ope­ra­do­res es muy similar y tiene el siguiente aspecto:

afirmación1 operator afirmación2
java

A co­n­ti­nua­ción, te ex­pli­ca­mos cómo se utilizan AND y OR mediante algunos ejemplos prácticos.

Web Hosting
El hosting que crece con tu proyecto
  • Tiempo de actividad de 99.99 % y seguridad ga­ra­n­ti­za­da
  • Aumenta el re­n­di­mie­n­to según el tráfico de tu página web
  • Incluye dominio, SSL, e-mail y soporte 24/7

Operador AND en Java

El operador AND se utiliza en Java para comprobar si dos afi­r­ma­cio­nes son ve­r­da­de­ras. Se forma de la siguiente manera:

afirmación1 && afirmación2
java

Solo responde “true” si ambas co­n­di­cio­nes son ve­r­da­de­ras. Si una o ambas afi­r­ma­cio­nes son falsas, re­s­po­n­de­rá “false”.

En nuestro primer ejemplo, le damos al sistema dos se­n­te­n­cias simples y le ordenamos que muestre el valor booleano apropiado uti­li­za­n­do el comando Java System.out.printIn. El resultado es el siguiente:

public class Main { 
public static void main(String[] args) { 
int x = 3; 
System.out.println(x > 1 && x < 7); 
} 
}
java

El sistema comprueba primero si el valor 3 es mayor que 1, lo cual es correcto. A co­n­ti­nua­ción, comprueba si la afi­r­ma­ción “3 < 7” es correcta, lo cual también es el caso. Por lo tanto, ambas afi­r­ma­cio­nes son correctas y nuestro resultado es “true”.

Ahora podemos ver qué ocurre si una afi­r­ma­ción es cierta, pero la otra no. Para ello, cambiamos li­ge­ra­me­n­te nuestro ejemplo:

public class Main { 
public static void main(String [] args) { 
int x = 3; 
System.out.println(x > 1 && x > 7); 
} 
}
java

También en este caso, el sistema comprueba la primera afi­r­ma­ción y determina que es correcta. Sin embargo, la segunda afi­r­ma­ción no es correcta. Como deben cumplirse ambas co­n­di­cio­nes, el resultado es “false”.

En nuestro tercer ejemplo, la co­m­pro­ba­ción es aún más breve. Como no se cumple la primera condición, el sistema ya no tiene en cuenta la segunda es­pe­ci­fi­ca­ción. Al fin y al cabo, el valor solo puede ser “false”:

public class Main { 
public static void main(String [] args) { 
int x = 3; 
System.out.println(x > 3 && x < 7); 
} 
}
java

El operador OR en Java

El operador OR en Java también comprueba dos re­qui­si­tos previos. Se forma de la siguiente manera:

afirmación1 || afirmación2
java

A di­fe­re­n­cia del operador AND de Java, para OR es fu­n­da­me­n­tal que se cumpla al menos una de las dos co­n­di­cio­nes. En este caso, la salida es “true”. Esta salida también aparece si se cumplen ambas co­n­di­cio­nes. Solo si no se cumple ninguna de las dos co­n­di­cio­nes responde con “false”. Lo ilu­s­tra­re­mos de nuevo con algunos ejemplos sencillos.

En el primer caso, si­m­ple­me­n­te su­s­ti­tui­mos el operador && del primer ejemplo por ||. El resultado es el siguiente:

public class Main { 
public static void main(String [] args) { 
int x = 3; 
System.out.println(x > 1 || x < 7); 
} 
}
java

Al igual que con el operador AND, ahora el resultado es “true”. Como la primera afi­r­ma­ción ya es verdadera, se cumple el requisito previo. Sin embargo, las di­fe­re­n­cias entre AND y OR en Java quedan más claras en el siguiente ejemplo:

public class Main { 
public static void main(String [] args) { 
int x = 3; 
System.out.println(x > 1 || x > 7); 
} 
}
java

La primera afi­r­ma­ción es verdadera, ya que 3 es realmente mayor que 1. Sin embargo, la segunda afi­r­ma­ción no es verdadera porque 3 no es mayor que 7. No obstante, como al menos una de las dos afi­r­ma­cio­nes es verdadera, el sistema seguirá dando como resultado “true”. La afi­r­ma­ción falsa en la segunda afi­r­ma­ción no es relevante para esto.

Solo re­ci­bi­re­mos la respuesta “false” si no se cumple ninguna de las dos co­n­di­cio­nes. Lo vemos en el siguiente ejemplo:

public class Main { 
public static void main(String [] args) { 
int x = 3; 
System.out.println(x > 3 || x > 7); 
} 
}
java

El sistema comprueba la primera afi­r­ma­ción y se da cuenta de que es in­co­rre­c­ta. Por lo tanto, pasa a la segunda afi­r­ma­ción. Si ésta fuera verdadera, re­ci­bi­ría­mos de nuevo el resultado “true”. Sin embargo, como ambas afi­r­ma­cio­nes son falsas, recibimos el resultado “false”.

Ir al menú principal