Un fragment de prelegere cu un mentor ca parte a cursului Universității Codegym. Înscrie-te la cursul complet.


„Bună, Amigo. Permiteți-mi să vă spun despre un nou tip de date. Booleanul . Variabilele de acest tip pot lua doar două valori: adevărat și fals.

„Cum îl folosim?”

„Acest tip este folosit implicit în multe locuri. Așa cum orice operație de adăugare produce un număr, rezultatul oricărei comparații este un boolean . Iată câteva exemple:”

Cod Explicaţie
1
boolean m;
Aceste două expresii sunt echivalente. Valoarea implicită a unei variabile booleene este false .
2
boolean m = false;
3
if (a > b)
    System.out.println(a);
Rezultatul comparației (fie adevărat , fie fals ) va fi atribuit variabilei m. Condiția este îndeplinită dacă expresia este evaluată la adevărat .
4
boolean m = (a > b);
if (m)
    System.out.println(a);
5
boolean m = (a > b);
if (m == true)
    System.out.println(a);
Nu este nevoie să compare o variabilă logică ( booleană ) cu adevărat sau fals . Rezultatul comparației va fi un boolean care se potrivește cu cealaltă variabilă. De exemplu, true == true se evaluează la adevărat; true == false se evaluează ca false .
6
boolean m = (a > b);
if (m)
    System.out.println(a);

„Mai multe exemple:”

Cod Explicaţie
1
public boolean isALessThanB (int a, int b)
{
    if (a < b)
        return true;
    else
        return false;
}
Această metodă verifică dacă numărul a este mai mic decât numărul b.

Iată patru comparații echivalente. Ultimul este cel mai compact și corect. Încercați întotdeauna să utilizați notația compactă .

2
public boolean isALessThanB (int a, int b)
{
   boolean m = (a < b);
    if (m)
        return true;
    else
        return false;
}
3
public boolean isALessThanB (int a, int b)
{
    boolean m = (a < b);
    return m;
}
4
public boolean isALessThanB (int a, int b)
{
    return a < b;
}

„Dacă vreau să scriu 0<a<b?”

„Java nu are un operator de comparație care să ia trei operanzi. Deci, ar trebui să o faceți astfel: (0<a) AND (a<b) ”.

„Scriu cuvântul ȘI?”

„Stai. O să explic asta. Java are trei operatori logici: AND , OR and NOT . Îi poți folosi pentru a construi condiții de complexitate diferită. Puteți folosi acești operatori numai cu expresii booleene . Deci, nu puteți scrie ( a+1) ȘI (3) , dar (a>1)ȘI (a<3) este OK."

„ Operatorul NOT este unar: afectează doar expresia din dreapta. Este mai mult ca un semn minus înaintea unui număr negativ, mai degrabă decât un semn de înmulțire între două numere.”

„Puteți efectua diverse operații pe variabile booleene (logice).

"Precum ce?"

"Hai să aruncăm o privire:"

Operator logic Notație Java Expresie Rezultat
ȘI && adevărat  &&  adevărat Adevărat
adevărat &&  fals fals
fals  &&  adevărat fals
fals && fals fals
SAU || adevărat || Adevărat Adevărat
adevărat || fals Adevărat
fals || Adevărat Adevărat
fals || fals fals
NU ! ! Adevărat fals
! fals Adevărat
Combinații și expresii comune m && !m fals
m || !m Adevărat
! (a și și b) !a || !b
! (a || b) !a && !b

— Ai putea să-mi dai mai multe exemple?

"Sigur:"

Notație Java Notatie logica
(a<3) && (a>0) (a < 3) ȘI (a>0)
(a>10) || (a<100) (a>10) SAU (a<100)
(a<b) && (!(c<=d)) (a<b) ȘI (NU (c<=d))

„Acum, fă niște sarcini”.