"Hallo Amigo!"

"Hallo Kim."

"Ik ga je vertellen over het Booleaanse type. Het is een omhulsel voor het booleaanse type, en het is zo eenvoudig als een fluitje van een cent. Hier is wat vereenvoudigde code van de Booleaanse klasse:"

Code
class Boolean
{
 public static final Boolean TRUE = new Boolean(true);
 public static final Boolean FALSE = new Boolean(false);

 private final boolean value;

 public Boolean(boolean value)
 {
  this.value = value;
 }

 public boolean booleanValue()
 {
  return value;
 }

 public static Boolean valueOf(boolean b)
 {
  return (b ? TRUE : FALSE);
 }
}

"Met andere woorden, de klasse is gewoon een verpakking voor het booleaanse type."

"Ja. En het heeft twee constanten (WAAR en ONWAAR), die tegenhangers zijn van de primitieve waarden waar en onwaar."

"Het behandelt ook autoboxing als een kampioen:"

Code Wat gebeurt er echt
Boolean a = true;
Boolean b = true;
Boolean c = false;
boolean d = a;
Boolean a = Boolean.valueOf(true);
Boolean b = Boolean.valueOf(true);
Boolean c = Boolean.valueOf(false);
boolean d = a.booleanValue();

"En zo werken vergelijkingen tussen Booleaanse en Booleaanse typen:"

Voorbeeld
boolean a = true;
Boolean b = true; //Will be equal to Boolean.TRUE
Boolean c = true; //Will be equal to Boolean.TRUE

a == b; //true (comparison based on primitive value)
a == c; //true (comparison based on primitive value)
b == c; //true (comparison based on references, but they point to the same object)

"Als u echt een onafhankelijk Booleaans object moet maken, moet u dit expliciet maken:

Voorbeeld
boolean a = true;
Boolean b = new Boolean(true); //A new Boolean object
Boolean c = true; //Will be equal to Boolean.TRUE

a == b; //true (comparison based on primitive value)
a == c; //true (comparison based on primitive value)
b == c; //false (comparison based on references; they point to different objects)

"Ik denk dat dat alles voor nu is."

"Ja, jouw lessen zijn korter dan die van Bilaabo."

"Dus, kan ik Boolean gebruiken in een if-voorwaarde?"

Boolean less = (2 < 3);
if (less)
{
….
}

"Ja, vergeet niet dat als minder null is, er een NullPointerException wordt gegenereerd."

"Ja, dat snap ik al. Ik houd het alleen niet de hele tijd in mijn hoofd."