Salir a jugar tiene condiciones
Tu madre te dice: "Sales a jugar al fútbol si has hecho los deberes y no llueve."
Fíjate en la y. Hacen falta las dos cosas. Si solo haces los deberes, no sales.
Con dos preguntas a la vez, un programa decide mejor. Hoy aprendes tres palabras para juntarlas: y, o, no.
Palabras clave
| Palabra | Qué significa | Ejemplo |
|---|---|---|
| Y (&&) | Da true solo si las dos partes son true. | a && b |
| O (||) | Da true si al menos una parte es true. | a || b |
| No (!) | Da lo contrario: de true hace false. | !a |
| Tabla de verdad | Una tabla con todos los casos posibles y su resultado. | true && false da false |
| Operador lógico | Un signo que junta o cambia respuestas de true o false. | && || ! |
Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.
Tres signos nuevos
Y se escribe &&: son dos signos pegados. Da true solo si las dos partes son true.
O se escribe ||: dos barras verticales. Da true si al menos una parte es true.
No se escribe !. Cambia true por false y al revés.
Pruébalo: entrada y edad
public class Main {
public static void main(String[] args) {
boolean hasTicket = true;
boolean isAdult = false;
System.out.println(hasTicket && isAdult);
System.out.println(hasTicket || isAdult);
System.out.println(!hasTicket);
// Cambia isAdult a true y mira los tres resultados.
}
}
Ejemplo resuelto: la tabla de verdad
| a | b | a && b | a || b | !a |
|---|---|---|---|---|
| true | true | true | true | false |
| true | false | false | true | false |
| false | true | false | true | true |
| false | false | false | false | true |
Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.
Un truco para recordarlo
Nota
Con && basta una parte falsa para que todo sea false. Con || basta una parte verdadera para que todo sea true.
Estar entre dos números
El gimnasio del barrio abre de 9 a 21 horas. ¿Está abierto a las 10?
Hay que preguntar dos cosas: ¿es 9 o más? ¿Es menos de 21? Las juntas con &&.
Así: hour >= 9 && hour < 21.
Pruébalo: el gimnasio
public class Main {
public static void main(String[] args) {
int hour = 20;
if (hour >= 9 && hour < 21) {
System.out.println("El gimnasio está abierto.");
} else {
System.out.println("El gimnasio está cerrado.");
}
// Prueba con 8, con 9 y con 21.
}
}
No lo escribas como en mates
Advertencia
En matemáticas escribes 9 <= hour < 21. En Java eso da un error. Hay que repetir la variable: hour >= 9 && hour < 21.
Pruébalo: fin de semana
public class Main {
public static void main(String[] args) {
String day = "domingo";
// Con || basta que una de las dos sea true.
if (day.equals("sábado") || day.equals("domingo")) {
System.out.println("Hoy no hay clase.");
} else {
System.out.println("Hoy hay clase.");
}
// Y con no: salimos si no llueve.
boolean raining = false;
if (!raining) {
System.out.println("Nos vamos al parque.");
}
}
}
Juntar las tres cosas
Puedes mezclar los signos. Usa paréntesis para que se entienda.
Para entrar a un concierto hace falta la entrada y tener 16 años o ir con un adulto.
En Java: hasTicket && (age >= 16 || withAdult). Mira la tabla.
Ejemplo resuelto: entrar al concierto
| Persona | Entrada | Edad | Con adulto | Entra | Por qué |
|---|---|---|---|---|---|
| Marta | true | 17 | false | true | 17 >= 16 es true. |
| Iker | true | 14 | false | false | Es pequeño y va solo. |
| Lucía | true | 14 | true | true | Va con adulto. |
| Pablo | false | 20 | false | false | No tiene entrada. |
Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.
Repaso rápido
Inténtalo
Repaso rápido
3 preguntasTus respuestas se corrigen aquí y no se guardan. Una cuenta guarda tus resultados.