Operaciones lógicas

<< Concatenar cadenas Conversión de tipos >>

Operadores de comparación

Hay operadores, como los de comparación que devuelven valores de tipo booleano (true, false). Estos operadores son: ‘<’ (menor), ‘>’ (mayor), ‘<=’ (menor o igual), ‘>=’ (mayor o igual), ‘==’ (iguales), ‘!=’ (distintos). Ejemplos:

System.out.println(5 < 6); // true
System.out.println(7 >= 10); // false

int a = 12;
int b = 6;

System.out.println(a == b); // false
System.out.println(a != b); // true

Sin embargo, las cadenas (String) al no ser tipos primitivos de datos (son objetos), se deben comparar usando equals, ya que usar el comparador == no funcionará correctamente (en otros lenguajes sí se puede utilizar). Más adelante en el curso explicaremos el porqué.

String nombre = "Juan";
String saludo = "Hola " + nombre;
System.out.println(saludo == "Hola Juan"); // false
System.out.println(saludo.equals("Hola Juan")); // true

Operadores lógicos

Existen también 3 operadores lógicos. Estos operadores se aplican únicamente a valores booleanos. La negación ‘!’ que niega el valor lógico a continuación (false → true, true → false), el operador and ‘&&’ y el operador or ‘||’. Las reglas básicas son:

  • Con el operador and, ambas condiciones deben ser verdaderas para que el resultado global sea cierto.
  • Con el operador or, basta con que una de las 2 condiciones sea cierta.
int edad = 25;
int anyosCarnet = 6;
String sexo = "Masculino";
String nombre = "Pepe";

boolean esPepeMayor = edad >= 18 && nombre.equals("Pepe");
System.out.println(esPepeMayor); // true
    
boolean tieneDescuento = (sexo.equals("Masculino") && anyosCarnet > 10) || (sexo.equals("Femenino") && anyosCarnet > 5);
System.out.println(tieneDescuento); // false

<< Concatenar cadenas Conversión de tipos >>