Operadores lógicos AND, OR y NOT en programación
Clase 6 de 35 • Curso de Kotlin
Resumen
Los operadores lógicos desempeñan un papel fundamental en la toma de decisiones dentro de un programa, permitiendo evaluar situaciones que pueden ser verdaderas o falsas. Se usan frecuentemente en combinación con otros operadores relacionales, como mayor que (>), menor que (<), igual (==), no igual (!=) y otros, para formar condiciones más avanzadas.
¿Qué tipos de operadores lógicos existen y cómo funcionan?
Existen principalmente tres operadores lógicos básicos:
- AND (
&&
): Retorna verdadero si ambas condiciones son verdaderas. - OR (
||
): Retorna verdadero si al menos una de las condiciones es verdadera. - NOT (
!
): Invierte el valor lógico, volviendo falso a verdadero y viceversa.
Estos operadores se utilizan comúnmente junto con operadores relacionales para evaluar múltiples condiciones complejas en tu código.
¿Cómo se usa el operador AND?
Este operador evalúa dos o más expresiones y retorna verdadero únicamente si todas las condiciones se cumplen.
Ejemplo:
emailValido = email.contains("@") && email.contains(".");
El resultado será:
- Verdadero solo si el email tiene ambas condiciones, arroba (@) y punto (.).
- Falso si alguna o ambas condiciones no se cumplen.
¿Cuál es el funcionamiento del operador OR?
El operador OR devuelve verdadero si al menos una condición se cumple. Es útil para evaluar múltiples condiciones y aceptar diversos escenarios positivos.
passwordProblema = password.length() < 6 || password.length() > 20;
Esto indica lo siguiente:
- Verdadero si la contraseña tiene menos de 6 caracteres o más de 20.
- Falso solo si el rango de la contraseña está entre 6 y 20 caracteres.
¿Cuál es la función del operador NOT?
Este operador sirve para invertir el resultado de una condición lógica. Si una condición es verdadera, el operador NOT lo vuelve falso, y viceversa.
emailInvalido = !emailValido;
Su aplicación es útil para simplificar condiciones o cambiar fácilmente el control lógico en tu aplicación.
¿Cómo combinar operadores para validar entradas y mensajes en programas?
Una aplicación práctica habitual de estos operadores consiste en evaluar entradas del usuario, como dirección de correo electrónico y contraseña. Por ejemplo, validar que:
- El email incluya "@", un punto y que no contenga la palabra "test".
- El asunto de un email no incluya palabras como "gratis" o "urgente".
La combinación de estos operadores permite construir validaciones robustas.
Ejemplo de una validación:
emailAceptable = email.contains("@") && email.contains(".") && !email.contains("test") && !asunto.contains("gratis") && !asunto.contains("urgente");
¿Cuáles son las recomendaciones al emplear operadores lógicos?
A continuación, algunas recomendaciones útiles al trabajar con operadores lógicos:
- Tener claridad en el uso de la igualdad y asignación: un solo igual (
=
) asigna un valor, mientras que el doble igual (==
) compara valores. - Usar nombres descriptivos para variables booleanas, como
esAprobado
,tieneEmails
,emailValido
, para una mejor comprensión del código. - Simplificar expresiones usando claramente operadores AND, OR y NOT para mantener la lógica fácil de leer y mantener en el futuro.
Se invita a compartir dudas y experiencias relacionadas con estos operadores en comentarios, así todos aprendemos juntos.