Logický typ
Pro reprezentaci logických (pravdivostních) hodnot je v Javě typ
boolean. Oborem hodnot tohoto typu jsou
pouze dvě hodnoty: false (nepravda)
a true (pravda).
boolean b1 = false;
boolean b2 = true;
Hodnota false je vnitřně reprezentována
jako 0, hodnota true jako 1.
Otázky a odpovědi
Studentka:
Mistře, proč je v Javě typ boolean?
Vždyť lze přece použít typ int
a např. hodnotu 0 pro false
a hodnotu 1 pro true. Nebo se mýlím?
Java guru:
Nemýlíš. Některé jazyky, např. C, nemají logický typ a pro
reprezentaci logických hodnot používají typ
int. Používání typu
boolean má však své výhody:
1) proměnná typu boolean vždy
reprezentuje pravdivostní hodnotu, protože může nabývat pouze
hodnot true nebo
false, 2) s proměnnou typu
boolean lze provádět jen operace,
které jsou pro tento typ zavedeny. Naproti tomu s proměnnou
typu int lze provádět všechny operace
nad typem int a to i tehdy, když
tato proměnná reprezentuje pravdivostní hodnotu.
Studentka:
Proč je důležité, jaké operace mohu s proměnnou provádět,
mistře?
Java guru:
Java je navržena tak, aby pokud možno nepovolovala zápis
příkazů, které nedávají smysl. Pokud bychom např. proměnnou,
která reprezentuje pravdivostní hodnotu, násobili třemi, jde
zřejmě o chybný příkaz. Zatímco v C je toto možné, v Javě
takový příkaz nelze zapsat, protože operace násobení není pro
typ boolean zavedena.