Știi ce este o condiție în programare? Dar ce sunt condițiile multiple? Cu siguranță, dacă știi un limbaj de programare, știi și ce este o condiție. Hai să-ți explic…
În orice limbaj de programare, de fapt, așa funcționează un calculator (pe decizii, la fel ca omul), o condiție îți pune în față ori o chestie adevărată, ori o chestie falsă.
Câte decizii iei într-o singură zi? Probabil că de la multe spre foarte multe în sus… Toate sunt bune? Ideal ar fi să fie bune, dar din nefericire unele nu sunt bune (mai ales în cazul meu).
Acele condiții care nu sunt bune, în programare returnează valoarea false. Toți ne dorim să aflăm adevărul, corect? Dacă alegi bine, atunci programul va returna valoarea true.
Trebuie să menționez faptul că o condiție într-un limbaj de programare returnează o variabilă de tipul boolean. Îți recomand să lecturezi articolul „Tipul unei variabile în Java”.
Instrucțiunea if
Știi ce face instrucțiunea if? Îți pune în față o condiție, iar dacă aceasta este adevărată, se va executa codul din interiorul instrucțiunii if. Dacă este falsă, se va executa codul din afara instrucțiunii if. În cazuri mai deosebite, vei avea tot felul de else if-uri. Îți recomand articolul „Instrucțiunea if în Java”.
În cadrul instrucțiunii if (și nu numai), se pot găsi condiții multiple. Ce înseamnă asta? În loc să se verifice dacă valoarea variabilei ani este 100, se mai poate adăuga o altă condiție.
Exemplu:
1| int ani = 100; 2| if (ani >= 10 && ani <=100) { 3| System.out.println("Te încadrezi la vârsta de legendă!”); 4| }
În exemplul anterior, am definit variabila ani, iar la rândul doi am pus două condiții:
- dacă variabila ani este mai mare sau egală cu 10
- și (sunt foarte importante acele simboluri && care unesc cele două condiții)
- dacă variabila ani este mai mică sau egală cu 100
Pentru că ambele condiții din if sunt adevărate, programul va afișa mesajul „Te încadrezi la vârsta de legendă!”.
Operatorul AND (&&)
Ce face operatorul AND (&&)? Îți pune la dispoziție verificarea a două sau a mai multor condiții. Atenție: dacă toate condițiile sunt adevărate, atunci programul returnează valoarea true, altfel, dacă una singură este falsă, va returna false.
Exemplu:
1| int ani = 10; 2| if (ani >= 2 && ani <= 10) { 3| System.out.println("Poți să conduci o bicicletă”); 4| } else { 5| System.out.println("Ori ești prea mic, ori deja vrei trotinetă...”); 6| }
În acest exemplu, se va afișa mesajul „Poți să conduci o bicicletă”. De ce? Pentru că ai între 2 și 10 ani… Ambele condiții din if sunt adevărate. Dacă una singură era falsă, se afișa mesajul din else.
Operatorul OR (||)
Operatorul OR (||) returnează valoarea true dacă numai o singură condiție este adevărată. Pentru a returna valoarea false, trebuie ca toate condițiile să fie false.
Exemplu:
1| int ani = 10; 2| if (ani >= 2 || ani > 10) { 3| System.out.println("Poți să conduci o bicicletă”); 4| } else { 5| System.out.println("Ori ești prea mic, ori deja vrei trotinetă...”); 6| }
Ce zici de condițiile din if? Prima condiție este adevărată, iar a doua este falsă. Mai „intrăm” în instrucțiunea if? Da, pentru că trebuie doar ca o singură condiție să fie adevărată când avem operatorul OR (sau SAU ||).
Hai să-ți arăt un exemplu cu OR și AND, care returnează valoarea false:
1| int ani = 10, ziua = 100; 2| if ((ani >= 20 || ziua < 10) && (ani <=10 && ziua > 100)) { 3| System.out.println("Adevărat!”); 4| } else { 5| System.out.println("Fals”); 6| }
Prima paranteză cu cele două condiții (ani >= 20 || ziua <10) este falsă, la fel și a doua paranteză cu celelalte două condiții (ani <= 10 && ziua > 100).
Pentru că avem operatorul AND (ȘI), doar o condiție trebuie să fie falsă pentru a returna valoarea false, rezultatul este false, astfel că nu intrăm în instrucțiunea if, ci în else. Mesajul afișat va fi „Fals”.
Operatorul NOT (!)
Ce face operatorul NOT? Inversează rezultatul condiției. Dacă ai o condiție (sau mai multe), iar rezultatul este adevărat (sau fals), cu operatorul NOT în față va deveni fals (sau adevărat). De exemplu, dacă x =3, !(x < 3) va returna valoarea true. De ce? Pentru că !(false) este adevărat…
Condiții multiple în Java
Ce zici acum când știi de condițiile multiple din Java? Operatorii &&, ||, ! (AND, OR, NOT) sunt disponibili în aproape orice limbaj de programare obișnuit, respectiv popular.
Învață să fii profesionist!